为了能够在本地测试环境也有相同的环境,就必须在本地配置多个访问主机,所以下面的内容是必须要看的了:
我本机的ip是192.168.0.2,现在我要配置三个域名(www.server110.com、www.baidu.com、www.google.com)同用一个ip的情况,首先配置host解析文件
192.168.0.2 www.server110.com
192.168.0.2 www.baidu.com
192.168.0.2 www.google.com
然后在网站的根目录下(就是httpd.conf文件里DocumentRoot指令配置的值),我的是
DocumentRoot "Q:/documentRoot/"
所以我在Q:/documentRoot/下面建立了这样的一个目录结构:
里面的每个文件夹都放一个index.html的文件作为正常访问的标识。
然后编辑apache的配置文件httpd.conf,找到
#Include conf/extra/httpd-vhosts.conf
去掉前面的井号,不去的话就把一下的配置加到httpd.conf文件内容的后面,效果是一样的,为了配置看起来独立性要求还是去掉前面的井号。
再然后打开conf/extra/httpd-vhosts.conf(里面的例子可以参考一下)这个配置文件,改成以下那样:
NameVirtualHost *:80
#
# 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.
#
<VirtualHost *:80>
DocumentRoot "Q:/documentRoot"
ServerName *
</VirtualHost>
<VirtualHost 192.168.0.2:80>
ServerAdmin [email protected]
DocumentRoot "Q:/documentRoot/baidu_t/server110"
ServerName www.server110.com
ErrorLog "logs/www.server110ErrorLog.com.log"
CustomLog "logs/www.server110CustomLog.com.log" common
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "Q:/documentRoot/baidu_t/baidu"
ServerName www.baidu.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "Q:/documentRoot/baidu_t/google"
ServerName www.google.com
</VirtualHost>
上面的意思,我看大家都明了了吧,明的话,也说一下,
必须要注意的是
DocumentRoot "Q:/documentRoot"
ServerName *
这一段不能去,否则当你访问localhost之类的都不能如同往常那样正常的访问了。
这个是指定监听192.168.0.2的80端口,
表示监听说有ip的80端口
ServerAdmin 这个指令后面的只是服务器出了问题时通知的邮箱,
DocumentRoot 这个指令就是配置网站的根目录,
ServerName 指令的值就是指定的主机名,
ErrorLog 指令配置的是错误日志,重启服务器之后就生成,
CustomLog 指令配置的是通用的日志文件,后面的common是别名,也会重启服务器之后就生成,
最后是测试了,截个图好说话:
有图有真相了,O(∩_∩)O哈哈~
声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。