不忘英语学习,坚持建站制作,听BEYOND音乐,健康生活每一天!永久域名:G1981.Cn
«CSS 的优先权详解 z-blog 修改默认索引页名称»
2008-7-30电脑网络
apache虚拟主机配置
 views

apache虚拟主机配置

Apache基于主机名称的虚拟主机配置(即多个主机名可以对应一个IP,apache根据不同的主机名称解析到不同的web目录。)下面是一个本地的实例。                        

#
#
#

#这里配置虚拟主机的使用的IP和端口号

 NameVirtualHost 127.0.0.1:80      
<VirtualHost 127.0.0.1:80>
    ServerAdmin xyz@xyz.com             //管理邮箱名称
    ServerName bbs                              //主机名称
    DocumentRoot “E:\virtual”             

//上面的路径可以是一个绝对路径也可以是一个相对路径。其中相对路径是指相对于的web根目录的路径
    ErrorLog logs/virtual_error_log     

 //为虚拟主机配置的错误日志文件
    CustomLog logs/virtual-access_log common

//用户访问日志文件
</VirtualHost>

好了,虚拟主机的配置都完成了,如果你对apache比较了解,还可以增加其它辅助的配置进去。

但是这时候会遇到一个问题,在浏览器里输入http://bbs/ (bbs是我们刚才配置的主机名称)会发现出现了无法显示网页的页面。这是什么原因呢?这是因为在浏览器里输入的域名,浏览器默认的先查询windows系统自带的一个hosts文件,查找跟主机名称对应的Ip地址,如果没有记录,就会向dns服务器发送请求以解析这个主机名。这就是为什么我们输入http://bbs出现无法显示网页的原因了,是的,因为没有找到主机名对应的IP地址。那怎么解决呢?我们用的是本地的apache服务器,IP地址是本地地址,所以不可能让dns服务器为我们解析主机名。但是我们可以手动修改windows系统的hosts文件,让hosts文件为我们解析ip(hosts文件一般在系统根目录下的windows/system32/drivers/etc目录下或者在系统根目录下的windows/system32目录下),只要在系统的hosts文件加入如下一行就ok了。

127.0.0.1 bbs           

好了,输入http://bbs 就可以访问我们的虚拟主机对应的web目录了。

但是,还没有结束,输入我们原来的主机命会发现访问到的同样是bbs虚拟主机对应的web目录。这是因为我们虚拟主机的设置覆盖了原来中心主机的设置。解决方法很简单,把原来的中心主机也配置成虚拟主机就可以了。关于这点,apache的帮助手册是这么描述的:

如果你想在现有的web服务器上增加虚拟主机,你必须也为现存的主机建造一个<VirtualHost>定义块。这个虚拟主机中ServerNameDocumentRoot所包含的内容应该与全局的ServerNameDocumentRoot保持一致。还要把这个虚拟主机放在配置文件的最前面,来让它扮演默认主机的角色。

       一样的配置方法(别忘了设置hosts文件 哦),完成后,重新启动apache就ok了。 就是这么简单!

日志信息»

该日志由 koma520 于 2008-7-30 15:39:29 发表,所属分类:电脑网络。欢迎您 发表评论,同时欢迎您在保留 源出处 与版权信息的基础上,引用 本日志。您还可以通过 Rss2.0 订阅本日志的所有评论。

相关日志»

评论(0)

发表评论»