在负载均衡器后面覆盖nginx中的$scheme
发布时间:2020-09-01 09:01:13 所属栏目:Nginx 来源:互联网
导读:我有一个nginx服务器坐在负载均衡器后面.负载均衡器处理SSL终止,所有请求都在端口80上命中nginx.我还使用SRCache module使用Redis进行整页缓存.缓存模块使用URL作为缓存键,如$schemeGET $host $request_uri.我以为我可以以某种方式覆盖nginx的$scheme变量,因
我有一个nginx服务器坐在负载均衡器后面.负载均衡器处理SSL终止,所有请求都在端口80上命中nginx.我还使用SRCache module使用Redis进行整页缓存.缓存模块使用URL作为缓存键,如$schemeGET $host $request_uri.我以为我可以以某种方式覆盖nginx的$scheme变量,因此缓存密钥方案将是https而不是http我不知道如何做到这一点,或者甚至可能. 我的应用程序在各种事件后缓存清除,并使用https生成缓存密钥,但nginx使用缓存密钥中的http进行缓存.这意味着由于未匹配的缓存键名称,缓存未被正确清除. 这是我的网站配置,如果这有帮助:
更新这是缓存配置
最佳答案
好的,所以我们在这里看到用于redis查找的缓存密钥:
问题是$scheme反映了对nginx(来自你的负载均衡器)的连接,但你的缓存模块正在使用来自$http_x_forwarded_proto的方案,它反映了实际使用的方案. 只做出改变就足够了. (编辑:哈尔滨站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- ruby-on-rails – 无法生成应用程序
- 是否可以在不使用硬件负载平衡器的情况下平衡多个Nginx负载
- 在具有Nginx和Gunicorn的生产环境中,使用unix套接字或tcp绑
- 如何告诉nginx仅为一个vhost管理的域提供https?
- ruby-on-rails – 无法将HTTP响应转发回HTTP客户端:用户似
- 如何在Heroku上使用REST API后端最佳地提供静态文件
- 如何告诉nginx仅为一个域提供SSL?
- 将Nginx修补为ip_hash 4个八位字节而不是3个
- ssl-使用Nginx将通配符子域重定向到另一个顶级域
- ruby-on-rails-使用Nginx的Rails的多阶段环境
推荐文章
站长推荐
- linux – 使用fail2ban的最大bantime
- 如何避免在nginx中重复add_header指令?
- ruby-on-rails-使用Capistrano Deploy复制Figaro
- OS X Yosemite上的Homestead Laravel 5.1中的通配
- 如何在nginx“if”语句中使用“or”运算符?
- python – Django可以单独运行Gunicorn(没有Apac
- 仅在一个站点上显示PHP错误
- Nginx和FastCGI下载PHP文件而不是处理它们
- python-Ngnix Gunicorn Flask:如何找出真正的基
- nginx-Gitlab docker注册表拉取失败的EOF
热点阅读