我正在配置我的 apache 服务器。在 httpd.conf 中,我将 DocumentRoot 设置如下:
DocumentRoot "D:/phpwwwroot"
我将目录节点设置如下:
<Directory "D:/phpwwwroot">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
目前,我还没有启用虚拟主机。我访问了 url: http://localhost:8080/
,一切正常。
接下来,我尝试设置虚拟主机。我取消了虚拟主机的注释。如下:
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
我的 httpd-vhosts.conf 如下:
NameVirtualHost *:8080
<VirtualHost *:8080>
ServerName www.testphp1.com
DocumentRoot "D:\VirtualRoot"
DirectoryIndex index.shtml index.html index.htm index.php
<Directory "D:\VirtualRoot">
Options Indexes FollowSymLinks
AllowOverride all
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *:8080>
ServerName www.testphp2.com
DocumentRoot "D:\VirtualRoot1"
DirectoryIndex index.shtml index.html index.htm index.php
<Directory "D:\VirtualRoot1">
Options Indexes FollowSymLinks
AllowOverride all
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
而且我还编辑了主机文件以更正映射,您应该知道我的意思:
127.0.0.1 www.testphp1.com
127.0.0.1 www.testphp2.com
接下来重启apache服务器,访问以下网址:
http://www.testphp1.com:8080/
http://www.testphp2.com:8080/
一切都好。它们被映射到正确的文件夹。
提出了一个新问题,当我尝试访问时http://localhost:8080/
,它来到了第一个虚拟主机--www.testphp1.com。我的意思是页面显示了www.testphp1.com
显示的内容。
似乎“主要主机”不起作用。
它是如何发生的?如何修复它