多站点的RewriteRule配置(仅适用于指定域)

问题描述 投票:0回答:1

我在一个目录实例上有几个域,例如:

aaa.com
bbb.com
ccc.com
ddd.com
、...

我想仅将指定域 URL 的重定向添加到另一个域 URL:

https://aaa.com/test1
=>
https://bbb.com/test1

问题是如果添加它:

Redirect 301 /test1 https://bbb.com/test1

它会破坏
https://bbb.com/test1
URL,并显示“重定向过多”错误消息。

我尝试过类似的方法,但它不起作用:

RewriteCond %{HTTP_HOST} ^(www\.)?aaa\.com$
RewriteRule ^/test1/?$ https://bbb.com/test1 [L,R=301]

我知道如何在 PHP 中简单地解决它,但我需要添加

.htaccess
。 预先感谢您的任何建议。

.htaccess redirect mod-rewrite
1个回答
0
投票
RewriteCond %{HTTP_HOST} ^(www\.)?aaa\.com$
RewriteRule ^/test1/?$ https://bbb.com/test1 [L,R=301]

.htaccess
中,与
RewriteRule
模式 匹配的 URL 路径上没有斜杠前缀。换句话说,
^/test1/?$
应该是
^test1/?$
,因为您要匹配 URL 路径
test1
(或
test1/
),而不是
/test1
。否则,您的规则看起来没问题,并且需要位于
.htaccess
文件的顶部现有 WordPress 代码块之前。

注意:首先使用 302(临时)重定向进行测试,以避免出现错误时潜在的缓存问题,否则“错误”可以被缓存!不用说,您需要在测试之前清除浏览器(和任何中间)缓存。

© www.soinside.com 2019 - 2024. All rights reserved.