配置squid来处理相对URL

时间:2017-01-04 13:38:45

标签: linux http networking proxy squid

我按如下方式构建并安装了squid 3.5.23

  • ./ configure --prefix = / usr / local / squid
  • make all
  • make install

Here是版本使用的默认squid.conf。我对文件进行了少量修改,使我的设置匿名:

forwarded_for delete
request_header_access Via deny all
request_header_access Cache-Control deny all

在我运行(远程)代理服务器后,我确认我可以配置我的(本地)浏览器以通过它发送流量。然后我将它带到下一步,让我的路由器将来自本地网络的所有流量发送到我的代理服务器:

iptables -t nat -A PREROUTING -s 192.168.11.0/24 -d ! 192.168.11.0/24 -p tcp -j DNAT --to-destination 100.200.30.40:3128

然而,我的所有请求都是从鱿鱼(BAD REQUEST)返回400。在进一步调查时,我发现请求标头使用了相对URL(我的浏览器非常智能,如果它知道它正在与代理服务器通信,则总是使用绝对URL)。

我知道HTTP 1.1标头需要有Host标头,squid可以使用它来确定它接收的数据包的原始目的地。如何配置代理服务器以使用该标头?我正在寻找相当于httpd_accel_uses_host_header on

的鱿鱼3.5

1 个答案:

答案 0 :(得分:0)

accelerator mode中运行鱿鱼修复了这个问题:

http_port 3128 accel