Windows上的Apache无法识别多个vhost

Windows上的Apache无法识别多个vhost

我正在尝试设置本地 WAMP 服务器,但在将域映射到目录时遇到了问题。当我只创建一个目录时,它工作正常,但一旦添加另一个目录,它就不起作用了。这是我的 vhosts 文件中的内容。

NameVirtualHost *:80

<Directory "D:\server ">
  Order Deny,Allow
  Allow from all
</Directory>


#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#


NameVirtualHost 127.0.0.1


<VirtualHost 127.0.0.1>
   DocumentRoot "d:\server\ctlife"
   ServerName site1.local
</VirtualHost>


<VirtualHost 127.0.0.1>
   DocumentRoot "d:\server\phpmyadmin"
   ServerName site2.local
</VirtualHost>

然后在我的 hosts 文件中输入这个

127.0.0.1 site1.local
127.0.0.1 site2.local

如果我从两个文件中都删除 site2.local,一切正常,但似乎无法识别另一个。我已遵循了很多教程,但无法弄清楚我做错了什么。

答案1

我更喜欢使用带有 IP 和端口的完整 NameVirtualHost 语句,例如

NameVirtualHost 127.0.0.1:80

我会尝试删除重复/重叠的 NameVirtualHost 语句。同时调整 VirtualHosts 以包含 IP:Port,如下所示:

<VirtualHost 127.0.0.1:80>
  ...
</VirtualHost>

应该可以。祝你好运!:)

相关内容