如何防止NGINX代理转发给自己

时间:2018-08-03 23:33:21

标签: nginx

如何防止NGINX代理转发给自身?

我在同一主机上运行具有高速缓存的http服务器(端口80)和转发代理(8080)。因此,代理转发到同一主机上的端口80是一种有效方案。

当有人不小心将请求发送到端口8080(而不是80)时,代理将进入永久循环。

  • 代理声明高速缓存未命中并将请求(传递给自身)。
  • 代理接收转发的请求。我正在使用proxy_cache_lock,因此代理需要等待5秒钟才能完成原始请求。
  • 5秒钟后,它仍然处理转发的请求,然后再次转发。
  • 第二个转发的请求再次被保留5秒钟,然后以相同的方式进行。

最终结果是我每5秒收到499错误。

在包含location的{​​{1}}块中,我想检查请求的主机/端口是否与代理主机/端口相同,如果返回则返回错误。

我该怎么办?

配置(部分):

proxy_pass directive

0 个答案:

没有答案