Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我可以将https与Varnish缓存一起使用吗_Https_Varnish - Fatal编程技术网

我可以将https与Varnish缓存一起使用吗

我可以将https与Varnish缓存一起使用吗,https,varnish,Https,Varnish,我可以将varnish缓存与https一起使用吗?或者这会带来很少甚至没有性能增益吗?利与弊是什么?我已经为http设置了vcl。我想现在就用https试试这个 我读过这篇文章,但它是从2011年开始的: Varnish本身不支持SSL,并且在可监管的未来不太可能支持SSL 要使用SSL并仍然能够使用varnish进行缓存,必须在将请求发送到varnish之前终止SSL。这可以通过例如HAProxy或Nginx有效地实现 了解如何准确地配置此功能;只需在google上搜索ssl终止haproxy

我可以将varnish缓存与https一起使用吗?或者这会带来很少甚至没有性能增益吗?利与弊是什么?我已经为http设置了vcl。我想现在就用https试试这个

我读过这篇文章,但它是从2011年开始的:

Varnish本身不支持SSL,并且在可监管的未来不太可能支持SSL

要使用SSL并仍然能够使用varnish进行缓存,必须在将请求发送到varnish之前终止SSL。这可以通过例如HAProxy或Nginx有效地实现


了解如何准确地配置此功能;只需在google上搜索
ssl终止haproxy/nginx
就会得到足够多的结果-

您可以在haproxy中设置X-Forwarded-for头。如果已经为其他反向代理设置了X-Forwarded-header,则它们总是将自己的地址添加到其中,最左边或第一个地址就是源地址。您不必考虑这个问题,任何读取和使用X-Forwarded-Forwarded-For头的东西都会自动进行排序

您还需要设置X-Forwarded-Proto,这样您就可以在Varnish中发挥各种魔力,比如重定向不使用TLS的流量,而不影响后端服务器,并分离缓存,因为Varnish不谈论TLS,这可能会产生一些有趣的结果,像没有被提供的图像,因为当页面通过HTTPS服务时,它们是通过HTTP请求的


附带的问题是,您是否使用HAProxy在多个后端之间实现负载平衡?如果没有,为什么不在Apache中终止TLS连接,将其发送到Varnish,然后再次返回Apache?

我正在使用Apache。所以我想我需要nginx和apache以及varnish来完成这项工作?在流量巨大的情况下,你可能会想这样做,因为它速度更快。但是对于更平均的流量,我建议您坚持使用Apache作为SSL终止代理,而不必学习新的软件。这意味着您的流量将使用HTTPS Apache->HTTP Varnish->HTTP Apache。