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

如何将localhost/website/index.php?pages=pages/login.php重写为localhost/website/login?遇404错误

Apache URL重写404问题修复

你的配置核心问题是RewriteBase路径错误,同时重写规则缺少必要的.php后缀,导致服务器无法正确定位资源。修正后的配置如下:

RewriteEngine On
RewriteBase /website/

# 跳过真实存在的文件或目录,避免干扰正常访问
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^ - [L]

# 将/xxx重写为index.php?pages=pages/xxx.php
RewriteRule ^([^/]+)/?$ index.php?pages=pages/$1.php [NC,L,QSA]

关键调整说明:

  • RewriteBase修正:将/Domain/改为/website/,与你的站点实际根路径保持一致,确保重写规则基于正确的目录生效
  • 添加.php后缀:原目标参数是pages/login.php,而URL中只传入了login,因此需要在规则中补全.php后缀,让服务器能正确解析参数对应的文件
  • 保留文件/目录跳过规则:确保真实存在的文件(如css、js)和目录不会被重写,维持站点正常资源访问

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 20:05:23