以下情况: 在服务器上是一个apache和Varnish用于缓存. SSL由亚马逊负载均衡器处理. 如果使用https请求页面,则http标头“X-Forwarded-Proto”设置为“https”. 页面有时会有所不同(例如,使用安全
在服务器上是一个apache和Varnish用于缓存. SSL由亚马逊负载均衡器处理.
如果使用https请求页面,则http标头“X-Forwarded-Proto”设置为“https”.
页面有时会有所不同(例如,使用安全连接时必须使用https获取链接/图像)
如果X-Forwarded-Proto标题不同,如何告诉varnish页面是否不同?
就像现在一样,首先访问的是缓存并为http和https提供服务!
sub vcl_recv { if ( req.http.X-Forwarded-Proto !~ "(?i)https") { set req.http.x-Redir-Url = "http://" + ...req url; }else{ set req.http.x-Redir-Url = "https://" + ...req url; } }
对不起,我现在更新了代码.这就是我的意思.