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

htaccess重定向异常:访问/news/categories跳404需加载cats.php

解决方法

在现有Rewrite规则中添加一条**精确匹配/news/categories**的重写规则,并将其放在带参数的分类规则之前,确保优先匹配。

修改后的完整配置如下:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [R=301,L]

RewriteCond %{THE_REQUEST} \s/category\.php\?catid=(\S+)\s [NC]
RewriteRule ^ /news/categories/%1? [R=301,L]

RewriteCond %{THE_REQUEST} \s/article\.php\?title=(\S+)\s [NC]
RewriteRule ^ /news/%1? [R=301,L]

RewriteCond %{REQUEST_URI} !/(exception\.php|admin) [NC]
RewriteCond %{THE_REQUEST} \s/([^.]*)\.php/?\s [NC]
RewriteRule ^ /%1? [R=301,L]

# 新增规则:精确匹配/news/categories,内部加载根目录cats.php
RewriteRule ^news/categories$ cats.php [NC,L]

RewriteRule ^news/categories/([^/]*)$ category.php?catid=$1 [NC,QSA,L]

# 修正原配置拼写错误:artice.php → article.php
RewriteRule ^news/([^/]*)$ article.php?title=$1 [NC,QSA,L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+?)/?$ $1.php [L]

关键说明:

  • 新增的RewriteRule ^news/categories$ cats.php [NC,L]实现了精确匹配请求路径/news/categories,内部重写到根目录的cats.php文件,NC忽略大小写,L表示匹配后终止后续规则处理。
  • 必须将这条规则放在^news/categories/([^/]*)$规则之前,避免被带参数的分类规则干扰。
  • 修正了原配置中的拼写错误:artice.php改为article.php,避免文章页面出现404问题。

内容的提问来源于stack exchange,提问作者Péter Gergő

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 21:52:43