为什么proxy_set_header主机$ host; 不再在nginx 1.8.0中工作?

iwe*_*ein 9 proxy nginx

我曾经proxy_set_header Host $host;将主机头设置为原始请求主机.在nginx 1.4.1中,这工作正常.现在升级到1.8.0后,我得到本地IP而不是浏览器传递的主机.

为什么会发生这种情况,我该如何解决?

Cor*_*ter 0

太长;博士;我不确定它什么时候改变的,但是新版本的 nginx - 而不是ssl_protocols ...;- 你的conf应该是:

proxy_ssl_server_name on; proxy_ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

来源: https: //stackoverflow.com/a/25330027

===

如果您像我一样,您会误读日志文件并看到host=example.com. 这似乎不是发送到源的主机,而是指在 nginx-conf 中定义的主机,即虚拟主机。

(打开表明error_log debug;主机标头已正确设置。)

日志文件还应包含类似“sslv3 警报握手失败”的错误。