apache配置虚拟主机,为什么总是第一个VirtualHost起效

fantawy 2009-08-05 04:16:36
大家帮忙看看
httpd.conf加入以下设置后,
访问"www.abc.cn"、"www.abc.net"、"test.abc.cn"时,为什么都是第一个VirtualHost起效——即访问的都是“E:/website/www/abc1”,怎样解决啊!

NameVirtualHost *:80

<VirtualHost *:80>
DocumentRoot "E:/website/www/abc1"
ServerName www.abc.cn
</VirtualHost>

<VirtualHost *:80>
DocumentRoot "E:/website/www/abc2"
ServerName www.abc.net
</VirtualHost>

<VirtualHost *:80>
DocumentRoot "E:/website/www/abc3"
ServerName test.abc.cn
</VirtualHost>
...全文
234 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
fantawy 2009-08-06
  • 打赏
  • 举报
回复
问题已解决,

abc1下的内容移到站点根目录下
然后httpd.conf改成这样就好了:

NameVirtualHost *:80

<VirtualHost *:80>
DocumentRoot "E:/website/www"
ServerName www.abc.cn
</VirtualHost>

<VirtualHost *:80>
DocumentRoot "E:/website/www/abc2"
ServerName www.abc.net
</VirtualHost>

<VirtualHost *:80>
DocumentRoot "E:/website/www/abc3"
ServerName test.abc.cn
</VirtualHost>

不知什么原理!
forandever 2009-08-05
  • 打赏
  • 举报
回复
1、确认一下你的对应的3个域名都是指向了这台服务器的IP
2、将 * 替换一下

<VirtualHost www.abc.cn:80>
DocumentRoot "E:/website/www/abc1"
ServerName www.abc.cn
</VirtualHost>

<VirtualHost www.abc.net:80>
DocumentRoot "E:/website/www/abc2"
ServerName www.abc.net
</VirtualHost>

<VirtualHost test.abc.cn:80>
DocumentRoot "E:/website/www/abc3"
ServerName test.abc.cn
</VirtualHost>

24,923

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Apache
社区管理员
  • Apache
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧