我的想法是将 NGINX 作为代理重定向到 Varnish(缓存静态内容),然后使用大量不同 IP 的 VirtualHost 代理到 apache。我的问题是我不知道如何配置 Varnish 以将访问权限发送到正确的 IP,我将解释:
NGINX:
- 监听:10.10.10.10、20.20.20.20 和 30.30.30.30 端口:80 和 443
- 代理重定向到 Varnish 10.10.10.10:8080、20.20.20.20:8080 和 30.30.30.30:8080
漆:
- 端口:8080——这就是问题所在
- 代理内容在端口 8000 上对 Apache 来说不是静态的 - 这是另一个问题
Apache2:
- 监听:10.10.10.10:8000、20.20.20.20:8000 和 30.30.30.30:8000
- 响应正确的 VirtualHost
这就是想法。当我尝试仅使用一个 IP 时,一切都正常工作,因为 Varnish 只监听一个 IP 和端口,并且也通过一个 IP 和端口发送到后端。
您能帮我配置 Varnish 吗?或者有配置类似场景的最佳方法吗?
答案1
一旦您获得解码的数据包(例如,如果您使用 Nginx 进行 SSL 卸载),您就不需要根据 IP 地址进行区分。
一旦您获得了解码的数据包,Varnish 就可以将内容直接传递给 Apache,并且 Apache 可以根据 HTTP 请求中的主机头确定它需要访问哪个站点 - 您不需要将 IP 一直分开。