>백엔드 개발 >PHP 튜토리얼 >一个IP多个站点配置问题

一个IP多个站点配置问题

WBOY
WBOY원래의
2016-06-23 14:03:53794검색

 我想把两个域名解析到同一个209.221.156.243这个IP上,但是配置apache后 两个域名始终指向同一个站 
配置代码如下:
NameVirtualHost 209.221.156.243:80


    ServerName  xx.com
    DocumentRoot d:/aa
    ErrorDocument 404 /404.html
    ErrorLog  "|bin/rotatelogs.exe -l d:/aa/logs/errorlog.%Y-%m-%d-%H_%M_%S.log 86400" 
    CustomLog "|bin/rotatelogs.exe -l d:/aa/logs/access%Y-%m-%d.log 86400" combined
    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^xx.com [NC]
    RewriteRule ^(.*)$ http://www.xx.com$1 [L,R=301]
    RewriteEngine On
    RewriteCond %{REQUEST_METHOD} ^TRACE
    RewriteRule .* - [F]


    ServerName  yy.com
    DocumentRoot d:/bb
    ErrorDocument 404 /404.html
    ErrorLog  "|bin/rotatelogs.exe -l d:/bb/logs/errorlog.%Y-%m-%d-%H_%M_%S.log 86400" 
    CustomLog "|bin/rotatelogs.exe -l d:/bb/logs/access%Y-%m-%d.log 86400" combined
    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^yy.com [NC]
    RewriteRule ^(.*)$ http://www.yy.com$1 [L,R=301]
    RewriteEngine On
    RewriteCond %{REQUEST_METHOD} ^TRACE
    RewriteRule .* - [F]


访问yy.com却访问到xx.com的程序!网上找了很多也没找到正解  望高手们帮看看


回复讨论(解决方案)

同一个端口怎么识别呢?

同一个端口怎么识别呢?
如果是不同端口 域名必须后面带端口号才能访问!

并没有发现写法上的问题,我也是这么写的
可能与 apache 的版本或其他设置有关

并没有发现写法上的问题,我也是这么写的
可能与 apache 的版本或其他设置有关
奇怪的是 我把第二个配置成www.yy.com后 
当我去访问www.yy.com就能正确访问到bb下的程序
但是不带www的yy.com 仍然访问的是aa下的程序也就是www.xx.com站!

引用 3 楼 xuzuning 的回复:并没有发现写法上的问题,我也是这么写的
可能与 apache 的版本或其他设置有关
奇怪的是 我把第二个配置成www.yy.com后 
当我去访问www.yy.com就能正确访问到bb下的程序
但是不带www的yy.com 仍然访问的是aa下的程序也就是www.xx.com站!
我把第二个ServerName配置成www.yy.com后 

按规则 yy.com 是域,www.yy.com 才是域名
或许有关系
你可尝试注释掉全局的一节

呃,单点进入 
ServerName需要是域名
加上你的RewriteRule是对www的,可能是这个原因

多谢两位,问题得到解决。确实与域名规则和301重定向规则有关系。结贴。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.