在我的计算机上,我使用带虚拟主机的 WAMP。我所做的就是将 127.0.0.1 my-project.loc 行添加到 system32\drivers\etc\host 文件中,并将以下代码添加到 Apache2.2.11\conf\extra 文件夹中的 httpd-vhost.conf 中。
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot "c:/wamp/www/my-project.loc"
ServerName my-project.loc
ErrorLog "logs/my-project.loc-error.log"
CustomLog "logs/my-project.loc.log" common
</VirtualHost>
我的问题是如何让 www.my-project.loc 也能正常工作。您能给我一个聪明的解决方案吗?因为我认为编写相同的代码但这次使用 ServerName www.my-project.loc 不是一个好主意。
泰
答案1
在 ServerName 指令下添加以下行:ServerAlias www.my-project.loc
答案2
您需要第二个<VirtualHost>
块ServerName www.my-project.loc
和相同的 DocumentRoot
理想情况下,第二个块将用于mod_rewrite
将所有请求重定向 (301) 到一个“规范”主机名,而不是拥有两个相同的网站副本。示例:
RewriteEngine On
RedirectMatch 301 /(.*) http://my-project.loc/$1
答案3
在 hosts 文件中添加另一行
127.0.0.1 www.my-project.loc
然后在虚拟主机配置中的 ServerName 指令后添加此行:
ServerAlias www.my-project.loc