【发布时间】:2011-12-16 15:38:56
【问题描述】:
我正在尝试让动态虚拟主机工作,按照文档进行操作,但效果不佳。
这些是我的 HOSTS 文件中的域:
127.0.0.1 walestourism.local.co.uk
127.0.0.1 www.walestourism.local.co.uk
127.0.0.2 walestourism.local.co.uk
127.0.0.2 www.walestourism.local.co.uk
这是来自 httpd.conf:
NameVirtualHost 127.0.0.2
<VirtualHost 127.0.0.2>
ServerName www.walestourism.local.co.uk
ServerAlias walestourism.local.co.uk
DocumentRoot /www/walestourism.local.co.uk
ScriptAlias /cgi-bin/ /www/walestourism.local.co.uk/cgi-bin
</VirtualHost>
在我的所有其他代码中,上述代码的 VirtualHost 部分始终为 *:80。
我的 httpd.conf 中有这段代码:
<Directory C:/www/vhosts>
Order Deny,Allow
Allow from all
AllowOverride All
</Directory>
<Directory C:/www/vhosts1>
Order Deny,Allow
Allow from all
AllowOverride All
</Directory>
<Directory C:/www/vhosts.www>
Order Deny,Allow
Allow from all
AllowOverride All
</Directory>
<Directory C:/www/test2>
Order Deny,Allow
Allow from all
AllowOverride All
</Directory>
<Directory C:/www/>
Order Deny,Allow
Allow from all
AllowOverride All
</Directory>
我应该如何解决此错误,因为当我在其中键入域时,它会将我带到 http://localhost 的内容?这是我尝试使用动态虚拟主机添加域时遇到的基本问题。
另外,如果我将浏览器指向“http://localhost/”,我会得到默认的“It Works!”页面,所以我知道我的服务器正在运行,这肯定与 vhosts 配置有关。
我检查了我的错误日志 - 因此没有错误,那么为什么每个域都指向 localhost,即使为它们配置了一个文件夹(/www/ 在这种情况下是 C:/www,我的 Apache/webserver 的目录)。
我是 Apache 这个领域的新手,尽管在谷歌上搜索了一下午,但我不知道如何解决这个问题。
我决定尝试这个来避免执行 cmd > httpd -k restart 每次我添加一个新的虚拟主机进行测试,但是我做错了什么吗?
我在 Apache 2.2 上,使用 Windows 7,使用 PHP 5.28 [在此提及规范]。
我该怎么办?
非常感谢所有建议!
【问题讨论】:
标签: apache httpd.conf vhosts document-root