WooCommerce环境下.htaccess引发内部重定向过多错误排查
问题排查与解决方案
问题定位
当前.htaccess配置存在两处关键问题,是引发内部重定向循环导致500错误的核心原因:
- HTTP_AUTHORIZATION规则格式错误:规则中包含多余的
.和空格,导致环境变量无法正确解析,触发异常重定向逻辑。 - 最终RewriteRule路径错误:
RewriteRule . /index.php [L]使用根目录绝对路径,结合RewriteBase /it/的配置,会将请求转发到站点根目录的index.php,若根目录存在其他重写规则,极易形成重定向循环。
修正后的.htaccess配置
<IfModule mod_rewrite.c> RewriteEngine On # 修正HTTP_AUTHORIZATION变量传递规则,移除多余符号和空格 RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase /it/ # 匹配当前目录下的index.php,直接终止重写流程 RewriteRule ^index\.php$ - [L] # 若请求目标不是文件或目录,转发到当前目录的index.php RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . index.php [L] </IfModule>
额外操作建议
- 替换配置后,重启Apache服务确保新规则生效。
- 持续监控mod_rewrite日志,确认重定向循环是否消除。
- 检查站点根目录是否存在其他
.htaccess文件,避免子目录与根目录规则冲突。
内容的提问来源于stack exchange,提问作者Steven56
相关产品推荐
相关产品推荐

