LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 914|回复: 4

apache 虚拟主机设置

[复制链接]
发表于 2004-3-21 15:33:16 | 显示全部楼层 |阅读模式
我在自己的机器上倒腾apache服务器,是Redhat9.0自带的。当只有一个主机时,用http://localhost,与http://192.168.1.2(我的主机IP)能看到自己添加进去的缺省网页:index.html。但当我用Redhat9.0里的图形化httpd服务器设置工具设置了两台虚拟主机(分别为:www.host1.com,www.host2.com,并且已经修改了/etc/hosts文件)后,再去访问httpd服务器时,弹出的只是testpage.无论用以下哪几种访问方法:http://localhost,http://192.168. ... tp://www.host2.com.

  请各位大侠帮忙,看看问题出在哪里?
发表于 2004-3-21 21:45:28 | 显示全部楼层
启动基于域名的虚拟主机后,用ip地址访问的就是虚拟主机中的第一个<VirtualHost> 指定的DocumentRoot 路径,主配置文件中的DocumentRoot好像就没有用了

=========以上是我自己想的,不对的地方请指出=========
发表于 2004-3-21 22:08:38 | 显示全部楼层
你可以在所有虚拟主机段的后面加一个*:80的虚拟主机,用来接收所有没有定义的主机名的申请。
发表于 2004-3-23 14:45:12 | 显示全部楼层
最初由 cozo 发表
你可以在所有虚拟主机段的后面加一个*:80的虚拟主机,用来接收所有没有定义的主机名的申请。


好像不行啊。
假如我把1.2.3.4设为虚拟主机了,各个虚拟主机的DocumentRoot都不同,主配置文件中的DocumentRoot目录指向/var/www/html ,其中有个子目录bbb。那么我在浏览器地址栏输入:http://1.2.3.4/bbb 后提示没有这个文件或目录,这是为啥啊?没有设成虚拟主机前能访问的 。
发表于 2004-4-1 08:49:47 | 显示全部楼层
我不知道你是怎么设置的,下面的是我apache的虚拟主机(基于域名)设置

NameVirtualHost 192.168.0.98

<VirtualHost 192.168.0.98>
    ServerAdmin webmaster@happy.loc
    DocumentRoot /home/www/www.happy.loc
    ServerName happy.loc
    ErrorLog logs/dummy-host.example.com-error_log
    CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>
<virtualhost 192.168.0.98>
    serveradmin webmaster@happy.loc
    documentroot /home/www/mail
    servername mail.happy.loc
    directoryindex index.html index.html index.php
    adddefaultcharset ISO-2022-CN
</virtualhost>
我的主配置文件中的documentroot的目录指向/home/www/html 两个虚拟主机,都可以正常现实呀
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表