web-dev-qa-db-de.com

Virtueller Host funktioniert nicht in Windows 7 XAMPP

Ich benutze Windows 7 und XAMPP. Ich möchte einen virtuellen Host erstellen, also habe ich hinzugefügt

127.0.0.1       myawesomeproject  

zu meiner Hosts-Datei (C:\Windows\System32\drivers\etc\hosts) wie folgt:

    # Copyright (c) 1993-2009 Microsoft Corp.
    #
    # This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
    #
    # This file contains the mappings of IP addresses to Host names. Each
    # entry should be kept on an individual line. The IP address should
    # be placed in the first column followed by the corresponding Host name.
    # The IP address and the Host name should be separated by at least one
    # space.
    #
    # Additionally, comments (such as these) may be inserted on individual
    # lines or following the machine name denoted by a '#' symbol.
    #
    # For example:
    #
    #      102.54.94.97     rhino.acme.com          # source server
    #       38.25.63.10     x.acme.com              # x client Host

    # localhost name resolution is handled within DNS itself.
        127.0.0.1       localhost
        127.0.0.1       myawesomeproject
        ::1             localhost

und ich habe meiner XAMPP-vhosts-Konfigurationsdatei (C:\xampp\Apache\conf\extra\httpd-vhosts.conf) folgende Zeilen hinzugefügt:

#
# Virtual Hosts
#
# If you want to maintain multiple domains/hostnames on your
# machine you can setup VirtualHost containers for them. Most configurations
# use only name-based virtual hosts so the server doesn't need to worry about
# IP addresses. This is indicated by the asterisks in the directives below.
#
# Please see the documentation at 
# <URL:http://httpd.Apache.org/docs/2.2/vhosts/>
# for further details before you try to setup virtual hosts.
#
# You may use the command line option '-S' to verify your virtual Host
# configuration.

#
# Use name-based virtual hosting.
#
NameVirtualHost *:80

#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#
##<VirtualHost *:80>
    ##ServerAdmin [email protected]
    ##DocumentRoot "C:/xampp/htdocs/dummy-Host.localhost"
    ##ServerName dummy-Host.localhost
    ##ServerAlias www.dummy-Host.localhost
    ##ErrorLog "logs/dummy-Host.localhost-error.log"
    ##CustomLog "logs/dummy-Host.localhost-access.log" combined
##</VirtualHost>

##<VirtualHost *:80>
    ##ServerAdmin [email protected]
    ##DocumentRoot "C:/xampp/htdocs/dummy-Host2.localhost"
    ##ServerName dummy-Host2.localhost
    ##ServerAlias www.dummy-Host2.localhost
    ##ErrorLog "logs/dummy-Host2.localhost-error.log"
    ##CustomLog "logs/dummy-Host2.localhost-access.log" combined
##</VirtualHost>


<VirtualHost *>
  DocumentRoot "C:\xampp\htdocs"
    ServerName localhost
   </VirtualHost>
<VirtualHost *>

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot c:\myawesomeproject
    ServerName localhost

<Directory "c:\myawesomeproject">
    Order allow,deny
   Allow from all
</Directory>

</VirtualHost>

Ich habe auf meinem Laufwerk C einen Ordner mit dem Namen myawesomeproject erstellt. Wenn ich tippe

http://myawesomeproject 

es leitet um zu

http://myawesomeproject/xampp

Ich habe einen weiteren Ordner 'test' in myawesomeproject hinzugefügt, sodass der Pfad zu 'test'C:/myawesomeproject/test lautet.

Das Problem ist, wenn ich http://myawesomeproject/test eingebe, gibt es einen Fehler. Es sagt

Object not found!

The requested URL was not found on this server. If you entered the URL manually please check your spelling and try again.

If you think this is a server error, please contact the webmaster.
Error 404
myawesomeproject
8/22/2011 4:30:29 PM
Apache/2.2.17 (Win32) mod_ssl/2.2.17 OpenSSL/0.9.8o PHP/5.3.4 mod_Perl/2.0.4 Perl/v5.10.1 

Warum ist das? Wie kann ich einen virtuellen Host erstellen?

Angesichts der Konfiguration, die Sie beschreiben, bin ich etwas überrascht, dass Sie Apache starten. Versuchen Sie, Ihre Hosts-Datei so zu konfigurieren

    127.0.0.1    localhost myawesomeproject.com

dann räum deine vhosts so auf

<VirtualHost *:80>
  DocumentRoot "C:\xampp\htdocs"
  ServerName localhost
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot C:\myawesomeproject
    ServerName myawesomeproject.com

    <Directory "C:\myawesomeproject">
        Order allow,deny
       Allow from all
    </Directory>
</VirtualHost>

Dies sollte den Verkehr für http://myawesomeproject.com nach C:\myawesomeproject und den Verkehr für http://localhost nach C:\xampp\htdocs leiten.

2
user2483

Ok, ich habe es herausgefunden. Sie müssen die Zeile mit auskommentieren

NameVirtualHost *

Nachdem ich das Kommentarzeichen entfernt und Apache im XAMPP-Kontrollfeld neu gestartet hatte, fing es an zu funktionieren

1
Faval