Apache htaccess按IP配置跳转出现too many redirect错误如何解决?
问题原因
你配置的重定向规则未对coming-soon.html本身的请求做排除,非允许IP的用户访问该提示页时,规则会持续命中,反复将请求重定向到同一个页面形成死循环,最终触发too many redirect报错。
修复方案
修改.htaccess的重定向规则如下:
RewriteCond %{REMOTE_ADDR} !^1\.2\.3\.4$ RewriteCond %{REQUEST_URI} !/coming-soon.html$ [NC] # 如果提示页依赖样式、图片等静态资源,可额外添加下面这条规则做排除 # RewriteCond %{REQUEST_URI} !\.(css|js|png|jpg|ico)$ [NC] RewriteRule .* /coming-soon.html [R=302,NC,L]
配置说明
- 新增的
REQUEST_URI判断逻辑,会跳过对提示页本身以及依赖静态资源的重定向校验,避免死循环 - IP地址中的
.需要用\转义,避免正则匹配逻辑误判其他相似IP - 调试阶段建议使用
302临时重定向,301永久重定向会被浏览器长期缓存,容易导致调试结果不准确,确认规则生效无误后再更换为301 - 末尾的
L标记表示匹配当前规则后停止执行后续重写规则,避免其他规则产生冲突
内容的提问来源于stack exchange,提问作者stecog
相关产品推荐
相关产品推荐

