用代理登陆 Trac 系统, 最好关闭 IP 检查
最近通过代理登陆 Trac 系统,不管怎么折腾,就是登不上去(包括手工修改浏览器 Cookie),分析了一下 Trac 的 web 模块的代码,发现罪魁祸首原来是 trac.ini 中的 check_auth_ip 设置,默认是启用的:
check_auth_ip = false
单一的代理背后可能是一个代理服务器集群,每次 HTTP 请求会从中随机或依据某种策略选择一个,导致 IP 变化。
不过 IP 检查在一定程度上能防止 Cookie 欺骗和 CSRF 攻击。