将HTTPS请求重定向到HTTP(清漆),然后重定向到后端服务器HTTPS

时间:2018-09-16 11:09:16

标签: nginx varnish

我当前的配置是这样的: 1. Nginx监听端口8080和443 2.清漆监听端口80

当前,当通过HTTP发出请求时,它们是通过清漆传递的,但是当通过HTTPS发出请求时,清漆不会传递它们。 我的目标是在客户端和Nginx Web服务器之间放置清漆(或使清漆在端口443上工作)

通读文章并回答StackOverflow,我尝试将反向代理443设置为80(也许是8080?)

我关注了这些文章:

https://www.smashingmagazine.com/2015/09/https-everywhere-with-nginx-varnish-apache/ https://serverfault.com/questions/835887/redirect-http-to-https-using-varnish-4-1

问题是,当我尝试进行设置时,出现502错误的请求错误,有时还会显示默认的Nginx页面。

PS:我正在尝试使用虚拟服务器块(而非默认服务器)进行设置。 PS2:我还需要通过HTTPS传递最终的Web页面,以通过HTTP或HTTPS发出请求(但重定向错误太多) PS3:我正在使用Cloudflare

1 个答案:

答案 0 :(得分:0)

基本概念是将清漆夹在处理SSL的实体和工作在端口8080或任何您选择的后端服务器之间。 这是交通流量:

用户443>用于SSL卸载的前端代理443> Varnish 80> nginx 8080。

现在您可以选择前端代理:

1.A负载均衡器,支持SSL终止/卸载。

2.Nginx或Apache作为代理在443上接收流量并将其在端口80上转发到Varnish。

错误502表示您的Varnish连接后端存在问题,请检查varnish.vcl