带有 WAMP 的虚拟主机
Posted
技术标签:
【中文标题】带有 WAMP 的虚拟主机【英文标题】:Virtual Host with WAMP 【发布时间】:2012-04-06 20:41:54 【问题描述】:我正在使用 Wamp 2.2,编辑 conf/extra/httpd-vhosts.conf
编辑此文件以添加 VirtualHosts ,但是当我在 httpd.conf
中取消注释行以包含 httpd-vhosts.conf 文件时,重新启动 Wamp 后不会启动。如果我恢复更改就可以了。
任何想法为什么会发生这种情况?
这是我在httpd-vhost.conf
中使用的代码:
<VirtualHost *>
ServerAdmin admin@localhost.com
DocumentRoot "C:/wamp/www" # change this line with your htdocs folder
ServerName localhost
ServerAlias localhost
<Directory "C:/wamp/www">
Options Indexes FollowSymLinks Includes ExecCGI
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
# WooCommerce Multisite
<VirtualHost dev.lo>
ServerAdmin admin@localhost.com
DocumentRoot "C:/wamp/www/dev"
ServerName dev.lo
ServerAlias dev.lo
<Directory "C:/wamp/www/dev">
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
谢谢
乔治
编辑
按照 Andreas Hagen 的建议,我通过 httpd.exe 运行 Apache。
第一个错误是DocumentRoot
的参数错误,当DocumentRoot
只接受一个参数时,就像注释一样被视为第二个参数。
然后我收到警告:[warn] NameVirtualHost *:80 has no VirtualHosts
。快速搜索并发现非常有用的问题 - https://serverfault.com/questions/1405/apache-2-startup-warning-namevirtualhost-80-has-no-virtualhosts
【问题讨论】:
【参考方案1】:可能是 vhosts 文件中的一些错误配置。尝试从命令行启动 apache,以便获得错误输出。这将帮助您确定问题。
【讨论】:
运行exe文件即可。认为它被命名为httpd.exe 试过了,但是httpd.exe一打开就关闭了,所以收不到错误提示。 在终端运行,意思是打开cmd,输入httpd.exe的路径【参考方案2】:打开您的主机文件 (\WINDOWS\system32\drivers\etc\hosts
)。
将此行添加到底部:
127.0.0.1 test
这将告诉您的计算机任何包含 test 的 url 都将被路由到 127.0.0.1 (localhost)。
现在打开 httpd.conf
并将其添加到文件的最底部:
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot "c:/wamp/www/myfirstsite/"
ServerName testsite
</VirtualHost>
现在重新启动 apache 并导航到:http://test/(您可能需要重新启动浏览器才能使更改生效。)
希望这行得通。
【讨论】:
我已经为 dev.lo 编辑了 hosts 文件 -127.0.0.1 dev.lo
。【参考方案3】:
转到 C:/drive 并选择 wamp 文件夹
然后转到 C:\wamp\bin\apache\Apache2.4.4\conf 并选择 httpd.conf 文件。
用记事本编辑并转到58行号
更改 Listen 80 并替换 Listen 8181 保存文件并重新启动您的 Apache 服务器
现在检查 url,例如 localhost:8181
我用过这个跳你会成功的。
【讨论】:
以上是关于带有 WAMP 的虚拟主机的主要内容,如果未能解决你的问题,请参考以下文章