不要HTTP代理服务器修改请求数据包?(Do HTTP proxy servers modify r

2019-06-24 01:13发布

是任何请求头添加或修改,以HTTP请求由代理服务器转发到服务器之前?

如果是这样,变化做相同的数据包,或者是内容用于创建与修改,新的请求数据包?

Answer 1:

有几种不同类型的代理服务器。 因为你所提到的请求头,我会认为你是在谈论HTTP代理服务器,HTTP请求转发,不包。

注:在特殊情况下, HTTPS请求 (通过TLS / SSL CONNECT ),代理服务器在TCP数据包的只是将内容转发(并不能检查数据包,除非作为一个人在这方面的中间人代理)。


当然,这取决于代理软件和它的配置,但HTTP代理预计遵循W3C 的Web内容转换代理指南 ,其中指出很多东西,但最贴切:

  • 除了之间进行转换HEADGET代理人不得更改请求方法。

  • 如果请求包含一个Cache-Control: no-transform指令,如所描述的代理必须不改变以外遵守和部分13.5.2在RFC 2616 HTTP区段部分14.9.5定义透明HTTP行为,并增加标头字段的请求在4.1.6其他HTTP头字段 。

  • 除了由RFC 2616 HTTP代理不应该修改比其他头字段的值需要修改User-AgentAcceptAccept-CharsetAccept-Encoding ,并Accept-Language头字段,并且不能删除头字段。

  • 代理应该添加请求到逗号的端部的引发剂的IP地址在分隔的列表X-Forwarded-For HTTP标头字段。

  • 代理必须(按照RFC 2616)包括一个Via HTTP报头字段。


总之,您可以普遍预期这些HTTP报头由符合标准的代理更改/补充道:

  • User-Agent
  • Accept
  • Accept-Charset
  • Accept-Encoding
  • Accept-Language
  • X-Forwarded-For
  • Via


文章来源: Do HTTP proxy servers modify request packets?