Windows localhost 和虚拟主机上的 Apache
Posted
技术标签:
【中文标题】Windows localhost 和虚拟主机上的 Apache【英文标题】:Apache on Windows localhost and virtualhosts 【发布时间】:2013-12-19 08:05:04 【问题描述】:这是我的问题,我在 Windows 8.1 机器上运行 wamp 2.2。
现在,安装后,localhost 工作正常。 当我去创建一个虚拟主机时,在设置好 httpd.conf 文件之后,如果我要创建例如:
<VirtualHost *:80>
DocumentRoot "c:/wamp/www/test/"
ServerName test.local
</VirtualHost>
这只是覆盖了我的本地主机。首先,test.local 不起作用,如果我要使用 localhost,它会将我带到 c:/wamp/www/test/
有人有解决办法吗?
PS : 我一直在正确设置我的 windows 主机文件(添加:127.0.0.1 test.local),我的 80 端口是空闲的(没有关闭 Skype 和防病毒)。
编辑:我也尝试过使用不同的端口 (8080),但问题仍然存在。
我在浏览器上收到的消息是:“Google chrome 找不到该网站”
【问题讨论】:
【参考方案1】:试试这个:
<VirtualHost *:80>
DocumentRoot "c:/wamp/www/test"
ServerName test.local
ServerAlias test.local
<directory "c:/wamp/www/test">
Options Indexes FollowSymLinks
AllowOverride all
Order Deny,Allow
Require local
</directory>
</VirtualHost>
【讨论】:
嘿!谢谢你的帮助。现在我这样做了,我得到了我一直得到的结果:Chrome(或其他)找不到该页面。【参考方案2】:如果您设置了虚拟主机,但仍想访问 localhost webroot,则需要为您的 localhost 添加一个虚拟主机首先
主要宿主离开
如果要将虚拟主机添加到现有 Web 服务器,则还必须为现有主机创建一个块。此虚拟主机中包含的 ServerName 和 DocumentRoot 应与全局 ServerName 和 DocumentRoot 相同。首先在配置文件中列出这个虚拟主机,让它作为默认主机。
http://httpd.apache.org/docs/2.0/vhosts/name-based.html
示例(未经测试):
NameVirtualHost *:80
<VirtualHost *:80>
ServerName localhost
DocumentRoot C:\wamp/www
</VirtualHost>
<VirtualHost *:80>
ServerName otherdomain.local
DocumentRoot C:\wamp/www/otherdomain
</VirtualHost>
【讨论】:
是的,那部分已经完成并且正在工作。本地主机运行良好,但第二个虚拟主机没有。 好吧,我不知道还能告诉你什么,因为我的示例直接来自文档。也许您可以发布您当前的虚拟主机配置,包括NameVirtualHost
、localhost
和您的测试域。您还可以查看此页面的常见错误配置:wiki.apache.org/httpd/CommonMisconfigurations以上是关于Windows localhost 和虚拟主机上的 Apache的主要内容,如果未能解决你的问题,请参考以下文章
如何从 Windows 7 pc 访问 Mac Osx 上的 localhost XAMPP?
在 Windows 上为 localhost 创建自签名证书