前言
最近从拾php爬虫项目,在配置虚拟域名的时候碰到一些坑,特写篇文章记录一下。
声明:博主使用的php环境是wamp
配置虚拟域名
这里默认 80端口 ,往下将介绍非80的情况。
第一步
找到 apache 的 httpd .conf配置文件。目录如下(仅供参考)D:\wamp64\bin\apache\apache2.4.18\conf\httpd.conf
使用搜索功能找到下面两项,去掉前面的 # 表示开启
LoadModule rewrite_module modules/mod_rewrite.so
Include conf/extra/httpd-vhosts.conf
第二步
找到apache的httpd-vhosts.conf的配置文件。目录如下(仅供参考)D:\wamp64\bin\apache\apache2.4.18\conf\extra\httpd-vhosts.conf
添加新的虚拟域名,文件中给出了个例子
根据上面的例子,自己添加一个类似的:
这里需要我们在网站根目录(www)下新建一个test目录。为了方便看效果,在目录中新建一个index.php文件,内容如下:
第三步
找到hosts文件,位置在这里C:\Windows\ System32 \drivers\etc\hosts。
可以用记事本或其他文本编辑器打开。但是不能直接在这个目录下修改。建议将其拷贝到桌面修改后在复制回去。或者可以尝试用管理员打开文本编辑器。
推荐用拷到桌面的那种方法。在hosts文件中加入虚拟域名的配置
第四步
重启apache或wamp环境,打开浏览器输入hojun.test.com,得到如下页面,表示虚拟域名配置成功!
非80端口情况
上面几步是在80端口下的得情况,假设我们在的apache在 8080端口 ,那么第一步的httpd.conf下的端口监听应该是这样的
第二步的虚拟域名例子是这样的:
然后hosts中按道理应该这么写:
结果虚拟域名不能访问。
抱着好奇心又去弄了一个虚拟域名,一样的index.php,里头phpinfo。
然后hosts这么配置
结果hojun.test.com和hojun.at.com都无法访问。
尝试在浏览器上输入hojun.test.com:8080,无法访问。
尝试在浏览器上输入hojun.at.com:8080,成功访问到了phpinfo。
好了,虽然还是有些地方感觉疑惑但是没去深究。不知道有没有不用加端口的形式就能访问的配置方法,知道的大佬可以留言指导下~