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

.htaccess重写规则配置:非PHP后缀缺失文件不跳转至index.php

.htaccess 重写规则修正方案

原有配置问题

原有规则存在逻辑顺序错误:第一条规则会匹配所有不存在的文件、目录直接跳转至index.php,第二条判断.php后缀的规则永远不会被触发,因此所有缺失资源(包括.js、.map等非PHP文件)都会被强制跳转。

修正后配置

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} (\.php$|^[^\.]+$) [NC]
RewriteRule ^ index.php [QSA,L]

规则逻辑说明

  • 前两个条件过滤请求:仅当请求路径既不是有效目录、也不是有效文件时,才进入后续判断
  • 第三个条件仅命中两类请求:以.php为后缀的请求、无任何文件后缀的路径请求
  • 仅命中规则的请求才会重定向到index.php,缺失的.js、.map、.css等带其他后缀的资源会直接返回404,不会执行跳转

效果验证

完全匹配需求示例的执行结果:

  • /helloworld.php:符合.php后缀规则,重定向到index.php
  • /hello/world:无后缀路径,重定向到index.php
  • /assets/js/missingfile.js:带.js后缀,无匹配规则,直接返回404

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 09:45:03