网站首页 > 技术教程 正文
前几天,重启了下Nginx代理服务,发现报错了,以下是本次的思考。
1:先解决问题
查看Nginx错误日志:
40 SSL_do_handshake() failed (SSL: error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure:SSL alert number 40) while SSL handshaking to upstream
是SSL校验的问题,主要原因就是SNI TLS扩展没有传递,先说解决方法,主要和Nginx proxy_ssl_server_name指令有关,其官方解释:
Enables or disables passing of the server name through TLS Server Name Indication extension (SNI, RFC 6066) when establishing a connection with the proxied HTTPS server.
有点晦涩,该指令默认是关闭的,如果打开,Nginx会读取后端服务器的主机名,作为SNI值发送给后端服务器,这样代理服务器和后端能够正确的HTTPS握手。
设置很简单:
proxy_ssl_server_name on;
2:进一步思考
可为什么原来没问题,重启后就有问题?自己属实没想明白,不过思考作为代理服务器,那些指令应该显示的传递呢,下面列举了一些:
location /ai {
proxy_pass http://;
proxy_redirect off;
proxy_ssl_server_name on;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
proxy_max_temp_file_size 0;
proxy_connect_timeout 3;
proxy_send_timeout 15;
proxy_read_timeout 165;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
}
具体就不解释了,超时设置应该重点关注。
3:超时
连接超时、写入超时、读取超时,主要关注读取时间,也就是等待服务器响应,先看图:
结构很复杂的,图中的网关和代理工作机制是差不多的,但角色不一样。
记住一个原则就行:下游(比如上图中的客户端就是第一个下游)设置的超时时间要大于上游的时间。
下面是两种情况:
- client超时时间 > 代理时间,则503报错(Service Unavailable)
- client超时时间 < 代理时间,则504报错(Gateway Timeout)
欢迎大家关注公众号【Java烂猪皮】,回复【666】,获取最新Java后端架构VIP学习资料以及视频学习教程,然后一起学习,一文在手,面试我有。
公众号【Java烂猪皮】里面每天都会分享很多独家的干货内容,比如:Java后端学习路线,分享实战项目,源码分析,百万级系统设计,系统上线的一些坑,MQ专题,真实面试题,每天都会回答大家提出的问题。
每一个专栏都是大家非常关心,和非常有价值的话题,我相信在专栏中你会学到很多东西,一起共勉。
作者:虞大胆
出处:Nginx设置代理的一个注意点 (qq.com)
猜你喜欢
- 2024-10-09 不懂Nginx正反向代理?没关系,只要会买东西你就明白了
- 2024-10-09 深度详解Nginx正向代理与反向代理?
- 2024-09-10 如何玩转nginx正反向代理(nginx反向代理的几种模式)
- 2024-09-10 nginx如何配置正向代理之非常简单操作
- 2024-09-10 nginx常用模块及反向代理(nginx反向代理配置实例)
- 2024-09-10 nginx代理https妈妈级教程(nginx代理https)
- 2024-09-10 图文讲解:如何使用 Nginx 反向代理、负载均衡
- 2024-09-10 nginx配置tcp代理(nginx tcp代理)
- 2024-09-10 使用 Nginx 作为你的开发代理工具
- 2024-09-10 网页服务-Nginx - 反向代理 - 基于浏览器
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)