对于网站调试我们已经习惯了在 dotnet 环境下利用 iis 自动设置一个调试网站,比如 localhost:34498,在 PHP 中则是创建一个虚拟目录 Alias 来测试网站程序。这些方法无法真正模拟一个真实的网站,尤其是 alias 的方式(比如 cookie 的作用域冲突)。为此,我们也可以尝试另一种方法,使用 localhost 二级域名。我们可以在 IIS 或 Apache 中创建形如 xxx.localhost 的域名 VirtualHost,在浏览器里直接访问此域名,最大限度地模拟真实环境。
以 wamp 为例,具体操作如下: 在 «wamp root»\bin\apache\apache2.4.23\conf\extra\httpd-vhosts.conf 中增加以下内容:
<VirtualHost *:80>
ServerName hxec.localhost
DocumentRoot «application root»
<Directory "«application root»">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require local
</Directory>
</VirtualHost>
保存重启 Apache 服务。浏览器端,Chrome 可以直接访问, Firefox 需要进行以下设置:
1. 在 Firefox 地址栏输入 about:config
2. 搜索 domain
3. 修改 network.dns.localDomains,添加 xxx.localhost,更多域名使用 , 分割即可,不支持通配符。
对于 ie 和 edge,需要修改 hosts 文件,增加一条记录 xxx.localhost 127.0.0.1
即可(未测试,应该没有用ie做调试的吧)