很小的下载也可能超出头部限制,而更大的正文反而能成功。先确定 Squid 拒绝的是交换中的哪一部分。

组成部分对应的 Squid 5–7 指令
客户端请求头,包括请求行request_header_max_size
客户端请求正文,例如上传数据request_body_max_size
服务器响应头reply_header_max_size
服务器响应正文reply_body_max_size

借助实际的代理错误和日志来判断是哪个组成部分以及响应的发出方。应用层限制或上游拒绝可能看起来像本地 Squid 故障。请查阅已安装版本的参考资料,确认对应的阈值和默认值。

还要确定 Squid 能看到什么。普通 CONNECT 不会暴露端到端 TLS 隧道内已加密的网站头部。因此明文代理请求、CONNECT 交换本身以及被拦截的 TLS 可能涉及不同的控制手段或组成部分。

在调高相关限制之前,先解释异常的体积。重复的 Cookie、意外的身份验证数据和格式错误的响应都需要排查;而有意支持的大文件上传则需要合适的正文阈值。把所有限制一起调高会掩盖这一区别。

相关文章