如何编写RewriteRule隐藏.php后缀并将vid.php路径改写为/video
Apache mod_rewrite 匹配规则补全
你需要同时配置「旧地址重定向到友好URL」和「友好URL内部映射到实际PHP文件」两组规则,才能完整实现需求:
1. 你现有RewriteCond对应的跳转规则
用于处理用户直接访问vid.php的场景,自动跳转至友好地址,隐藏.php后缀:
RewriteCond %{THE_REQUEST} /vid\.php\s [NC] RewriteRule ^ /video [L,R=301,NC]
2. 补充内部重写规则
用于处理用户访问友好地址/video的场景,内部转发到实际vid.php执行业务逻辑,地址栏不会发生变化:
RewriteRule ^video/?$ vid.php [L,NC]
规则参数说明
R=301:使用301永久重定向,有利于搜索引擎收录,将旧地址权重转移到新友好URLL:匹配到当前规则后停止执行后续重写规则,避免规则冲突NC:匹配路径时不区分大小写,/Vid.PHP、/VIDEO这类变体地址也能正常适配/?:兼容友好地址末尾带/不带/的场景,/video和/video/都可以正常访问
注意:使用前需要确认Apache已经开启
mod_rewrite模块,且在规则前配置了RewriteEngine On;如果站点部署在子目录下,需要额外添加RewriteBase /你的子目录路径/配置。
内容的提问来源于stack exchange,提问作者qadenza
相关产品推荐
相关产品推荐

