Apache重定向无限循环问题求助:特定页面带参数重定向配置
解决重定向无限循环问题
问题原因
你的规则仅匹配请求的路径部分(/app/my.page),完全忽略查询字符串。当重定向到/app/my.page?login=INTERNAL后,请求的路径依然是/app/my.page,会再次触发规则,导致无限循环。
修改后的配置
condition="%{QUERY_STRING} !^login=INTERNAL$" pattern="^(/app/my.page)$" substitution="$1?login=INTERNAL" flags="[R=302,L]"
关键改动说明
- 添加条件判断:
condition="%{QUERY_STRING} !^login=INTERNAL$"确保只有当查询字符串不是login=INTERNAL时,才执行重定向 - 精确匹配路径:给pattern加上
$,避免误匹配类似/app/my.page.abc这类路径 - 增加L标志:
L表示本次重定向后不再执行后续规则,减少不必要的规则处理
内容的提问来源于stack exchange,提问作者Viper
相关产品推荐
相关产品推荐

