VirtualHosts w Apache

0

Mam problem z podstawową konfiguracją Apache na localu pod Windows 7. Wygląda na to, że mój config jest zgodny z wieloma tutorialami znalezionymi na sieci, a jednak nie działa to tak jak powinno.

Chcę stworzyć sobie kilka poddomen dla domeny http://localhost/

Mój config apache wygląda mniej więcej tak:

<Directory />
    Options Indexes MultiViews FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

<VirtualHost *:80>
 DocumentRoot "c:/Users/Marooned/misc/Inetpub/4p/coyote-cmf"
 ServerName 4p.localhost
 ErrorLog "c:/Users/Marooned/misc/Inetpub/4p/coyote-cmf/apache-error.log"
</VirtualHost>

<VirtualHost *:80>
 DocumentRoot "c:/Users/Marooned/misc/Inetpub/foo/trunk/public"
 ServerName foo.localhost
 ErrorLog "c:/Users/Marooned/misc/Inetpub/foo/trunk/apache-error.log"
</VirtualHost>

<VirtualHost *:80>
 DocumentRoot "c:/Users/Marooned/misc/Inetpub/foo/branches/bar/public"
 ServerName bar.localhost
 ErrorLog "c:/Users/Marooned/misc/Inetpub/foo/branches/bar/apache-error.log"
</VirtualHost>

A plik etc/hosts ma wpisy:

127.0.0.1	4p.localhost
127.0.0.1	foo.localhost
127.0.0.1	bar.localhost

Przy takiej konfiguracji gdy wchodzę na dowolną poddomenę (4p, foo, bar) zawsze widzę kod z pierwszego wirtualnego hosta (tutaj 4p). Kolejność ma znaczenie, wstawiając jako pierwszy <VirtualHost> dla bar to kod bar będzie się odpalał dla każdej z tych poddomen.

Co zrobiłem źle i jak to naprawić?

1
# -----------------------------------
# Coś takiego na początku powinno być
# -----------------------------------

NameVirtualHost *:80

<VirtualHost *:80>
    DocumentRoot "C:/server/"
    ServerName localhost
</VirtualHost>

# -----------------------------------
# dopiero teraz subdomeny
# -----------------------------------
<VirtualHost *:80>
    DocumentRoot "C:/server/sub1/"
    ServerName sub1.localhost
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "C:/server/sub2/"
    ServerName sub2.localhost
</VirtualHost>
0

Śmiga.
Na początku mi zjadło localhosta, ale później spojrzałem, że on też musi być jako VirtualHost bo DocumentRoot przestał być brany pod uwagę.

Dzięki!

1 użytkowników online, w tym zalogowanych: 0, gości: 1