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

如何通过htaccess将URL中的&和=替换为-并添加.php后缀?

用.htaccess替换URL中的&和=为-并添加.php后缀

要实现你需要的URL转换,可通过以下.htaccess规则完成,核心是利用mod_rewrite模块逐步替换特殊字符并映射到目标PHP文件:

完整规则代码

RewriteEngine On
RewriteBase /

# 循环替换URL中的=为-,直到所有=都被处理
RewriteRule ^(.*)=(.*)$ $1-$2 [L,R=301]

# 循环替换URL中的&为-,直到所有&都被处理
RewriteRule ^(.*)&(.*)$ $1-$2 [L,R=301]

# 将处理后的无后缀URL映射到对应的.php文件
RewriteRule ^family/([^.]+)$ /family/$1.php [L]

规则说明

  1. 开启重写引擎:RewriteEngine On启用mod_rewrite模块,RewriteBase /设置重写基准路径为网站根目录。
  2. 替换=为-:第一条规则匹配所有包含=的URL片段,将=替换为-;L标记表示处理完该规则后重新发起URL匹配(确保所有=都被替换),R=301是永久重定向,利于搜索引擎收录。
  3. 替换&为-:第二条规则逻辑和第一条一致,负责替换所有&为-。
  4. 映射到PHP文件:最后一条规则将处理后的/family/xxx格式URL,内部映射到/family/xxx.php文件——用户访问时看不到.php后缀,但服务器会实际加载对应的PHP文件。

注意事项

  • 确保服务器已启用mod_rewrite模块(Apache默认通常启用,未启用需在服务器配置中开启)。
  • 临时测试时可将R=301改为R=302(临时重定向),测试无误后再换回301。
  • 规则顺序不可调换,必须先完成特殊字符替换,再进行文件映射。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 18:56:14