page1
我正在为几个域使用 Apache 2.2.3,对于其中一个域,我试图将除少数页面(例如和)之外的所有页面重定向page2
到根目录www.domain2.com
。我希望所有其他网站不受影响。
(以下内容应解析为www.domain2.com/page1
)
www.domain2.com/page1
(以下内容应解析为www.domain2.com
)
www.domain2.com/page3
以下是我尝试的方法,但不起作用。本质上,对于所有请求,www.domain2.com
我希望所有页面(保存page1
和page2
)解析为根(www.domain2.com
)。我在否定(除所有页面外)方面遇到了麻烦:
RewriteCond %{http_host} ^.*domain2\.com [nc]
RewriteRule ^.*domain2.com!(|/|/page1|/page2)$ http://www.domain2.com [r=301,nc,L]
答案1
这会将 domain2 上的所有请求(page1 和 otherpage 除外)重定向到 domain1 上的等效页面
RewriteCond %{HTTP_HOST} ^.*.domain2.com [NC]
重写条件 %{REQUEST_URI} !^/page1.html
重写条件 %{REQUEST_URI} !^/otherpage.html
重写规则 ^/(.*)$http://www.domain1.com/1 美元 [右=301,左]
例如:www.domain2.com/index.html -> www.domain1.com/index.html
复制里面的 rewriteconds(或者!^/(page1|otherpage)\.html
根据需要使用正则表达式)。