如何通过.htaccess的mod_rewrite将/featured-post/下所有文章重定向到/blog/
解决方案:将/featured-post/路径重定向到/blog/
直接在网站根目录的.htaccess文件中添加以下mod_rewrite规则即可实现需求:
RewriteEngine On # 永久重定向 /featured-post/xxx 到 /blog/xxx RewriteRule ^featured-post/(.*)$ /blog/$1 [R=301,L]
规则详解:
RewriteEngine On:必须开启重写引擎,否则所有规则都不会生效。^featured-post/(.*)$:正则表达式匹配URL中以featured-post/开头的所有路径,(.*)会捕获featured-post/之后的所有内容(比如post-title-123或者category/another-post这类多级路径)。/blog/$1:将捕获到的内容($1)拼接到/blog/之后,生成目标URL。[R=301,L]:R=301表示这是永久重定向,对SEO更友好;L表示这是最后一条规则,匹配后不再处理后续的重写规则,避免冲突。
注意事项:
- 确保你的Apache服务器已经启用了
mod_rewrite模块,如果没启用,需要先在服务器配置中开启它。 - 测试阶段可以先用
R=302(临时重定向),确认所有路径都能正确跳转后,再改成R=301,避免错误的永久重定向被搜索引擎缓存。 - 如果你的
.htaccess中已有其他重写规则,建议把这条规则放在最前面,防止被其他规则提前拦截。
内容的提问来源于stack exchange,提问作者user8543469
相关产品推荐
相关产品推荐

