Wamp 服务器:多个虚拟主机无法在 Windows 上运行
Posted
技术标签:
【中文标题】Wamp 服务器:多个虚拟主机无法在 Windows 上运行【英文标题】:Wamp Server: Multiple Virtual Hosts are not working on Windows 【发布时间】:2011-02-01 14:12:20 【问题描述】:我在 Windows 上有两个虚拟主机(例如:test1.dev 和 test2.dev)。但它总是为两个虚拟主机加载 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:\wamp\www\test1\public"
</VirtualHost>
<VirtualHost 127.0.0.1>
ServerName test2.dev
DocumentRoot "C:\wamp\www\test2\public"
</VirtualHost>
有人能认出问题吗?
【问题讨论】:
【参考方案1】:如果NameVirtualHost
不起作用,请不要忘记检查httpd.conf
中的"Listen [::0]:80"
之类的行并在那里添加您的端口。
【讨论】:
【参考方案2】:我变了
名称虚拟主机 *:80
到
NameVirtualHost 127.0.0.1:80
它对我有用
【讨论】:
【参考方案3】:大家好,我已经写了一个非常简单的教程,其中包括整个过程。如果您在评论中遇到任何问题,请告诉我。
http://www.kintek.com.au/web-design-blog/configuring-multiple-domains-within-wamp-for-local-development/
【讨论】:
不要链接到可能会被删除的外部页面,例如博客 正如预测的那样,该页面给出了“找不到页面”。【参考方案4】:您需要包含类似于以下行的内容
NameVirtualHost *
此外,由于 SSL 协议的限制,您似乎正在使用与虚拟主机不兼容的服务器的 https 连接。 http 请求中的Host
标头是加密的,当 apache 解密它时,它已经将请求传递给虚拟主机之一。
【讨论】:
【参考方案5】:我做了这样的事情 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>
【讨论】:
【参考方案6】:您不必将虚拟主机信息写入httpd.conf
。只需取消注释您加载conf/extra/httpd-vhosts.conf
的行,然后转到此文件并将您的信息放在那里。应该可以。
我的httpd-vhosts.conf
的例子:
NameVirtualHost *:80
<VirtualHost 127.0.0.1>
DocumentRoot "C:/wamp/www"
ServerName dev
</VirtualHost>
【讨论】:
windows os 目录中的 httpd-vhosts.conf 在哪里? wamp-dir\bin\apache\Apache2.2.11\conf\extra\ 另外,请查看本指南:dennisplucinik.com/blog/2007/08/16/…【参考方案7】:我猜你在某处错过了NameVirtualHost 127.0.0.1:80
行:)
【讨论】:
我在 httpd.conf 文件中添加了 (NameVirtualHost 127.0.0.1:80) 现在可以了。以上是关于Wamp 服务器:多个虚拟主机无法在 Windows 上运行的主要内容,如果未能解决你的问题,请参考以下文章