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

PHP/Apache Web服务器RewriteRule重写规则不生效404问题咨询

重写规则失效原因
  • 路径匹配规则格式错误:RewriteRule在目录级的.htaccess配置中匹配请求路径时,会自动剥离路径开头的斜杠/,你写的^/(accounts)/[0-9]+[/]?$规则包含前导斜杠,永远无法匹配到实际请求,所以规则完全不生效。
  • 参数捕获逻辑错误:你需要提取的ID部分没有用括号分组,规则里唯一的分组是(accounts),只能拿到值为accounts的$1变量,你写的$2不存在,就算规则匹配成功也无法传递ID参数。
修正后的重写规则

如果需要实现地址栏跳转,用如下配置:

RewriteEngine on
RewriteRule ^accounts/([0-9]+)/?$ /account?$1 [R=302,L]

如果只需要服务器内部重写、地址栏保持不变,去掉R=302参数即可:

RewriteEngine on
RewriteRule ^accounts/([0-9]+)/?$ /account?$1 [L]
.htaccess文件放置位置

子域名站点有独立的文档根目录,直接将.htaccess放在子域名对应的文档根目录下即可,无需放在主站点的www根目录。Hostinger平台默认子域名的文档根路径为domains/你的子域名/public_html,放到该目录下规则才会对子域名的所有请求生效。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 16:06:04