WAMP Server: несколько виртуальных хостов не работают в Windows

у меня есть два виртуальных хоста в windows(например: test1.dev и test2.разработка.) Но он всегда загружает содержимое test1.dev для обоих виртуальных хостов.

следующие файлы:

хозяева:

127.0.0.1    localhost
127.0.0.1    test1.dev
127.0.0.1    test2.dev

httpd.conf:

<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>

Include "c:/wamp/alias/*"

<VirtualHost 127.0.0.1>
    ServerName test1.dev
    DocumentRoot "C:wampwwwtest1public"
</VirtualHost>

<VirtualHost 127.0.0.1>
    ServerName test2.dev
    DocumentRoot "C:wampwwwtest2public"
</VirtualHost>

может ли кто-нибудь распознать проблему ?

6 ответов


Я предполагаю, что вы пропускаете NameVirtualHost 127.0.0.1:80 где-то :)


Я сделал что-то вроде этого 1 - для локального хоста его:

NameVirtualHost localhost:80
<VirtualHost localhost:80>
ServerName localhost
ServerAlias localhost
DocumentRoot D:/wamp/www
ErrorLog "D:/wamp/www/error.log"
CustomLog D:/wamp/www/access.log common
<Directory "D:/wamp/www">
    Options -Indexes FollowSymLinks MultiViews
    AllowOverride All
    <IfModule mod_access.c>
    Order allow,deny
    Allow from all
    </IfModule>
</Directory>
</VirtualHost>

2 и для любого другого локального домена

NameVirtualHost zf.local:80
<VirtualHost zf.local:80>
ServerName zf.local
ServerAlias zf.local 
DocumentRoot D:/Workspace/Zend/documentation
ErrorLog "D:/Workspace/Zend/documentation/error.log"
CustomLog D:/Workspace/Zend/documentation/access.log common
<Directory "D:/Workspace/Zend/documentation">
    Options -Indexes FollowSymLinks MultiViews
    AllowOverride All
    <IfModule mod_access.c>
    Order allow,deny
    Allow from all
    </IfModule>
</Directory>
</VirtualHost>

вам не нужно записывать информацию о виртуальном хосте в httpd.conf. Просто раскомментируйте строку, на которую вы загружаете conf/extra/httpd-vhosts.conf, затем перейдите в этот файл и поместите туда свою информацию. Должен работать.

пример моей httpd-vhosts.conf:

NameVirtualHost *:80

<VirtualHost 127.0.0.1>
    DocumentRoot "C:/wamp/www"
    ServerName dev
</VirtualHost>

вам нужно включить что-то похожее на следующую строку

NameVirtualHost *

кроме того, кажется, вы используете https-соединение с сервером, который не играет хорошо с виртуальными хостами из-за ограничения протокола SSL. The Host заголовок в http-запросе зашифрован, и к моменту его расшифровки apache уже передал запрос одному из виртуальных хостов.


Эй, ребята, я написал очень прямой учебник, который включает в себя весь процесс. Дайте мне знать, если у вас возникнут какие-либо проблемы в комментарии.

http://www.kintek.com.au/web-design-blog/configuring-multiple-domains-within-wamp-for-local-development/


сменил

NameVirtualHost *:80

до

NameVirtualHost 127.0.0.1:80

и это работает для меня