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

WordPress中如何将子文件夹页面重定向至新文件夹?

正确的多级URL统一重定向方案(WordPress .htaccess)

嘿,我来帮你搞定这个重定向问题!你之前的两种方法都没踩对关键点,我给你梳理下正确的实现方式:

问题分析

你需要把所有以https://www.example.com/news/events/开头的多级页面(比如/news/events/event18、/news/events/2024/conference这类),统一跳转到https://www.example.com/focus,不需要保留原URL的后续路径。


方案1:使用RedirectMatch(简单直接)

你之前的RedirectMatch正则写错了,导致跳转到了错误的路径。正确的写法应该是:

RedirectMatch 301 ^/news/events/.*$ /focus

解释:

  • ^/news/events/:匹配URL开头是/news/events/的请求
  • .*$:匹配/news/events/后面的所有内容(不管有多少级子目录)
  • /focus:目标跳转路径,最终会自动拼接成完整的域名URL

方案2:使用RewriteRule(更灵活,适配WordPress规则)

如果怕RedirectMatch和WordPress自带的重写规则冲突,推荐用mod_rewrite方案,记得把这段代码放在WordPress默认规则的前面(也就是# BEGIN WordPress注释块之前):

RewriteEngine On
RewriteBase /

# 排除真实存在的文件和目录,避免影响图片、CSS等静态资源访问
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

# 匹配/news/events/开头的所有URL,永久重定向到/focus
RewriteRule ^news/events/.*$ /focus [R=301,L]

关键参数说明:

  • [R=301]:标记为永久重定向(SEO友好,浏览器会缓存这个重定向规则)
  • [L]:表示这是最后一条规则,匹配后不再执行后续的重写规则(避免和WordPress的规则冲突)

重要注意事项

  1. 测试阶段用302临时重定向:把R=301改成R=302,确认跳转正常后再改回301,避免浏览器缓存错误的重定向规则。
  2. 清除浏览器缓存:测试时用隐私窗口或者清除缓存,不然可能看不到最新的重定向效果。
  3. 备份.htaccess文件:修改前先备份,避免改错导致网站无法访问。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 03:55:48