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

如何在httpd.conf中添加修复URL大小写及拼写错误的代码

解决Apache URL大小写不敏感及拼写错误自动纠正问题(XAMPP/Linux)

1. 启用mod_rewrite模块

打开/opt/lampp/etc/httpd.conf,找到以下行,去掉开头的#号以启用rewrite模块:

LoadModule rewrite_module modules/mod_rewrite.so

2. 添加全局Rewrite规则到httpd.conf

在httpd.conf文件的模块加载段之后、虚拟主机配置之前,添加以下配置:

2.1 创建URL拼写纠正映射文件

创建/opt/lampp/etc/url_corrections.txt文件,按「错误路径 正确路径」的格式添加需要纠正的规则,示例:

/tets /TEST
/test /TEST
/foo /FooBar
/wrongdir /CorrectDir

设置文件权限确保Apache可读取:

sudo chmod 644 /opt/lampp/etc/url_corrections.txt

2.2 写入Rewrite规则

在httpd.conf中添加:

# 开启Rewrite引擎
RewriteEngine On

# 定义拼写纠正映射(关联刚才创建的txt文件)
RewriteMap urlfix txt:/opt/lampp/etc/url_corrections.txt

# 规则1:处理自定义拼写错误,匹配到映射项则301重定向到正确路径
RewriteCond ${urlfix:%{REQUEST_URI}} !^$
RewriteRule ^(.*)$ ${urlfix:%{REQUEST_URI}} [R=301,L]

# 规则2:自动处理URL大小写不敏感问题
# 将请求路径转小写后检查对应的文件/目录是否存在,存在则重定向到正确大小写的路径
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteMap lc int:tolower
RewriteCond %{DOCUMENT_ROOT}/${lc:%{REQUEST_URI}} -f [OR]
RewriteCond %{DOCUMENT_ROOT}/${lc:%{REQUEST_URI}} -d
RewriteRule ^(.*)$ ${lc:%{REQUEST_URI}} [R=301,L]

3. 重启Apache服务

执行命令重启XAMPP的Apache进程:

sudo /opt/lampp/xampp restart apache

说明

  • 规则1用于手动指定的拼写错误纠正(比如/TETS到/TEST),可随时在url_corrections.txt中新增规则;
  • 规则2自动处理大小写问题,无论用户输入大写、小写或混合大小写,只要对应的文件/目录存在,就会重定向到正确的大小写路径;
  • 测试阶段可将R=301改为R=302(临时重定向),避免浏览器缓存影响调试,确认稳定后再改回301(永久重定向)。

内容的提问来源于stack exchange,提问作者Brandon Gaming NL

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 10:00:05