如何使Rewrite规则仅为以blog开头的目录添加末尾斜杠?
修改Apache Rewrite规则,仅对/blog开头的路径添加末尾斜杠
修改后的完整规则
RewriteCond %{REQUEST_URI} ^/blog RewriteCond %{REQUEST_URI} !(/$|\.) RewriteRule ^(.*)$ $1/ [R=301,L]
规则说明
- 第一条
RewriteCond:限定请求路径必须以/blog开头,确保只处理/blog、/blog/folder1这类路径,自动忽略/docs、/docs/blog等不符合要求的路径。 - 第二条
RewriteCond:保留原有逻辑,排除两类路径:- 已经以斜杠结尾的路径(避免重定向循环)
- 包含点号的路径(排除文件请求,比如
/blog/post.jpg这类不需要添加斜杠的文件)
RewriteRule:将匹配到的路径末尾添加斜杠,返回301永久重定向;L标记表示执行完这条规则后停止后续规则处理。
注意事项
- 确保Apache服务器已启用
mod_rewrite模块 - 测试阶段可以先将
R=301改为R=302(临时重定向),确认规则生效后再改回301,避免浏览器缓存错误的重定向规则 - 规则需放置在
.htaccess文件(网站根目录)或对应的Apache虚拟主机配置中
内容的提问来源于stack exchange,提问作者Gracie williams
相关产品推荐
相关产品推荐

