通过代理发送和接收请求时,会从代理服务器向它们添加一个额外的标头:
HTTP/1.0 200 Connection established
因此问题是,如何在不添加此标头的情况下通过 cURL (PHP) 发送请求?是否有任何 cURL 选项可以防止代理服务器公开其标头?
如果无法删除标头,那么请求的接收者是否可以确定它是通过代理而不是直接发送的?也就是说,请求将具有 2 个格式的标头:
HTTP/1.0 200 Connection established
HTTP/1.1 200 OK
关于接收者对请求标头的定义,我凭经验发现只有通过 cURL 发送给他的内容才会出现(在这种情况下,您可以模拟来自浏览器的完整请求)。因此,无法确定来自服务器端的代理。
至于向响应添加标头,切换到使用 SOCKS5。在那里,代理服务器不会将其自身的任何内容添加到答案中。