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

.htaccess实现旧域名仅文章重定向至新域名(排除首页及分类)

解决WordPress旧域名仅文章页面重定向到新域名的问题

我明白你现在的需求:要把旧域名下的仅文章页面(排除首页和指定的10个分类页面)301永久重定向到新域名,之前试了几种规则都没达到预期效果,我给你一套完整的可直接用的.htaccess方案,保证精准生效。

核心思路

我们需要在WordPress默认的重写规则之前,添加自定义的重定向规则:

  1. 先匹配旧域名的请求
  2. 排除首页(空请求或根路径/)
  3. 排除你指定的10个分类页面
  4. 排除静态资源(图片、CSS、JS等)和后台管理页面wp-admin
  5. 最后把符合条件的文章页面重定向到新域名的对应路径

完整的.htaccess代码

把下面的代码放在WordPress默认的# BEGIN WordPress注释之前,替换掉你自己的旧域名、新域名和分类路径:

# 自定义重定向规则:仅旧域名文章页面重定向到新域名
RewriteEngine On

# 匹配旧域名(带www或不带www都生效)
RewriteCond %{HTTP_HOST} ^(www\.)?olddomain\.bg$ [NC]

# 排除首页(空请求或根路径)
RewriteCond %{REQUEST_URI} !^/$ [NC]

# 排除指定的10个分类页面(替换成你实际的分类路径,每个分类用OR逻辑的独立规则连接)
RewriteCond %{REQUEST_URI} !^/categoryfirst/?$ [NC]
RewriteCond %{REQUEST_URI} !^/categorysecond/?$ [NC]
RewriteCond %{REQUEST_URI} !^/categorythird/?$ [NC]
# 继续添加剩下的7个分类,格式和上面一致
# RewriteCond %{REQUEST_URI} !^/your-category-4/?$ [NC]
# ...以此类推到第10个分类

# 排除静态资源(避免图片、CSS等也被重定向)
RewriteCond %{REQUEST_URI} !\.(jpe?g|png|gif|ico|css|js|svg|pdf)$ [NC]

# 排除后台管理页面
RewriteCond %{REQUEST_URI} !^/wp-admin/?$ [NC]
RewriteCond %{REQUEST_URI} !^/wp-login\.php$ [NC]

# 执行301重定向到新域名
RewriteRule ^(.*)$ https://newdomain.bg/$1 [L,R=301]

# WordPress默认重写规则(不要修改下面的内容)
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

关键规则说明

  • RewriteCond %{HTTP_HOST} ^(www\.)?olddomain\.bg$ [NC]:匹配旧域名,[NC]表示不区分大小写,不管用户输olddomain.bg还是www.olddomain.bg都生效。
  • RewriteCond %{REQUEST_URI} !^/$ [NC]:排除首页,!表示“不匹配”,^/$就是根路径。
  • 分类排除规则:!^/categoryfirst/?$中的/?表示分类路径带不带末尾的斜杠都排除,确保不管用户访问/categoryfirst还是/categoryfirst/都不会被重定向。
  • 静态资源排除:避免图片、样式表等静态文件被错误重定向,保证网站资源正常加载。
  • [L,R=301]:L表示这是最后一条规则,匹配后不再执行后续规则;R=301表示永久重定向,对SEO友好。

测试建议

  1. 保存.htaccess后,先清除浏览器缓存(或者用隐私窗口测试)。
  2. 访问旧域名的文章页面,检查是否跳转到新域名的对应页面,状态码为301。
  3. 访问首页、分类页面,确认不会被重定向。

如果还有问题,可以检查你的分类路径是否完全匹配,或者服务器是否开启了mod_rewrite模块(WordPress正常运行的话一般是开启的)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 03:57:33