You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.htaccess使用RewriteCond排除指定域名的301重定向配置问题

配置问题说明

你当前的配置逻辑完全错误,现有规则是只有访问domain4.com(含www前缀)时才会触发跳转到x1x1x1.com,和你的需求完全相反。

实现方案说明

两种实现方式都可以,但更推荐用RewriteCond做域名匹配,可读性更高、符合mod_rewrite的常规使用逻辑:RewriteRule默认仅匹配请求路径,要实现域名排除硬写在RewriteRule中反而需要额外调用服务器变量,没有必要。

正确配置示例

方案1:排除指定域名(所有非domain4的域名都跳转)

<IfModule mod_rewrite.c>
RewriteEngine on

# 否定匹配domain4的两种域名形式,NC代表忽略大小写
RewriteCond %{HTTP_HOST} !^domain4\.com$ [NC]
RewriteCond %{HTTP_HOST} !^www\.domain4\.com$ [NC]
# 末尾的$1用于保留原请求路径,不需要保留可删除直接写https://x1x1x1.com/
RewriteRule ^(.*)$ https://x1x1x1.com/$1 [R=301,L]
</IfModule>

方案2:精准匹配需要跳转的域名(更严谨,避免后续新绑定域名误跳转)

如果仅需要domain1、domain2、domain3三个域名跳转,其余所有域名都不跳转,用以下规则更可控:

<IfModule mod_rewrite.c>
RewriteEngine on

# 同时匹配三个域名的带/不带www前缀形式
RewriteCond %{HTTP_HOST} ^(www\.)?(domain1|domain2|domain3)\.com$ [NC]
RewriteRule ^(.*)$ https://x1x1x1.com/$1 [R=301,L]
</IfModule>

调试注意事项

测试阶段建议先把R=301改为R=302临时重定向,确认规则完全生效后再改回301,避免浏览器缓存旧的错误规则,导致调试异常。


内容的提问来源于stack exchange,提问作者ponline

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 10:30:00