nginx的upstream问题记录
最近我们用python开发了一套SSO、然后权限系统一起的一次大更新上线,上线后发现SSO无法正常工作,但测试环境一直无问题。
问题描述
问题URL
http://sso.a.com/signin?redirect_uri=http://tomcat
正常URL
http://sso.a.com/signin?redirect_uri=http://b.c.com
排查
检查代码啥的发现没问题,把动态获取的host改成静态的域名,单启进程后正常,问题定位在nginx的负载上.
nginx domain配置文件
upstream tomcat {server 10.143.88.240:10086;
}
server {listen 80 ;server_name xxxx;gzip on;gzip_static on;gzip_vary on;gzip_proxied any;gzip_min_length 1000;gzip_buffers 4 8k;gzip_disable "msie6";gzip_http_version 1.1;gzip_comp_level 5;gzip_types text/plain text/css text/javascript application/javascript application/x-javascript;location / {proxy_pass http://tomcat;}}
稍微思考一下,upstream中的name是一个变量,而做为变量即可得到后端地址,而不是直接给后端地址。
处理
将upstream中的name改成实际的域名,在这里即是b.c.com即可以获取,然后工作正常。
查看官主解释
默认情况下,nginx按加权轮转的方式将请求分发到各服务器。 在上面的例子中,每7个请求会通过以下方式分发: 5个请求分到backend1.example.com, 一个请求分到第二个服务器,一个请求分到第三个服务器。 与服务器通信的时候,如果出现错误,请求会被传给下一个服务器,直到所有可用的服务器都被尝试过。 如果所有服务器都返回失败,客户端将会得到最后通信的那个服务器的(失败)响应结果。
nginx的upstream问题记录相关推荐
- nginx相关的一些记录
nginx相关的一些记录 http redirect to https: if ($http_cf_visitor ~ '"scheme":"http"'){r ...
- php fpm 日志记录,如何解决nginx下php-fpm不记录php报错日志的问题
如何解决nginx下php-fpm不记录php报错日志的问题 发布时间:2020-07-28 10:17:29 来源:亿速云 阅读:150 作者:Leah 本篇文章为大家展示了如何解决nginx下ph ...
- nginx修改upstream不重启的方法(ngx_http_dyups_module模块)
为什么80%的码农都做不了架构师?>>> nginx很强大,第三方模块也不少,淘宝在nginx上很活跃,特别是章亦春,他参与的模块至少10+, 好了今天主角不是他,是一款动态配 ...
- nginx php fpm 日志,nginx下php-fpm不记录php报错日志怎么办?
解决nginx下php-fpm不记录php报错日志的办法:1.修改[php-fpm.conf]中配置,没有则增加:2.修改[php.ini]中配置,没有则增加:3.重启[php-fpm]即可. 解决n ...
- Nginx开启访问日志记录
转载自 https://www.cnblogs.com/want990/p/11551440.html Nginx开启访问日志记录 vi /etc/nginx/nginx.conf 2.打开 log_ ...
- Nginx系列--upstream模块的使用
原文网址:Nginx系列--upstream模块的使用_IT利刃出鞘的博客-CSDN博客 简介 说明 本文介绍nginx的upstream模块的使用. nginx的upstream模块 ...
- Nginx配置upstream
Nginx配置upstream并且实现负载均衡 Nginx配置upstream实现负载均衡 nginx配置-upstream
- Nginx的upstream目前支持5种分配方式
本文转自:http://mp.weixin.qq.com/s?__biz=MzI4OTU3ODk3NQ==&mid=2247484058&idx=1&sn=f4da816bfa ...
- nginx的upstream目前支持5种方式的分配
从本质上说,upstream属于handler,只是他不产生自己的内容,而是通过请求后端服务器得到内容,所以才称为upstream(上游).请求并取得响应内容的整个过程已经被封装到nginx内部,所以 ...
最新文章
- linux c sysconf函数 得到系统配置
- 初学python还是swift-iOS 将来 Swift 也许会取代 Python
- PKUSC2019游记
- linux安装jdk、tomcat
- C语言为什么要尽量少用全局变量
- JS杂谈系列-jquery-插件开发小记
- 常用推荐算法(50页干货)
- Atitit 外出活动实名制条例sak令[2018]第920号 《外出活动实名制管理条例》 SAK安全部令 第920号 现发布《外出活动实名制管理条例》,自2018年9月1日起施行。
- 用户自定义变量、系统变量、环境变量
- matlab用pathy语言,2018 年度编程语言 -- Python
- 【专利】实用新型专利设计模板
- unity 2020可用NDK 下载地址版本为19.0.5232133
- ubuntu/linux系统知识(14)ubuntu 搜狗输入法不见了,重启方法
- velodyne16点云特征分类
- 安卓Andriod使用入门(二)【高仿安卓微信6.0】
- 编写一个程序,提示用户输入以兆位每秒(Mb/s)为单位的下载速度和以兆字节(MB)为单位的文件大小。程序中应计算文件的下载时间。
- 摘录魏国谋士轮胜败要素
- 智能电网如何巡检?这个方法才是标配
- MacBook M1 Flutter环境搭建
- 如何用邮件(微信)接收交易信号?
热门文章
- VS2015--win32project配置的一些想法之在 Visual Studio 2015 中进行调试的同一时候分析性能...
- Html5 音效播放器
- Struts+Spring+Hibernate整合入门详解
- 摄像头光圈大小对景深的影响
- 最新的C#SqlHelper 类苏飞修改版(转载)
- 如何让自己的收件箱只收到自己订阅的邮件服务商
- (转)explorer.exe应用程序错误:0x000000该内存不能为read的解决方法
- 关于多边形内点数问题的一些变形
- 谈新公司的人才队伍建设
- Spring中bean的scope详解