网站首页 > 技术教程 正文
最近遇到了nginx疯狂抛错,access.log一天一共5W多条,但error.log中有大概9K多条,基本都是111: Connection refused,这到底是为什么呢?
从日志看起
我们还是先来看日志。我提取了一条error.log当中抛错的日志(稍微分一下行,否则实在太长,敏感信息稍微处理了一下):
2019/06/06 10:09:45 [error] 28652#0: *883239 connect() failed (111: Connection refused) while connecting to upstream, client: 124.104.90.145, server: xxx.xxxxx.com, request: "POST /test-service/upload?mcachenum=155978698 HTTP/1.1", upstream: "http://[::1]:17000/test-service/upload?mcachenum=155978698", host: "xxx.xxxxx.com", referrer: "https://servicewechat.com/x98b46f69/2/page-frame.html"
看了一下前面的报错和后面的描述,第一眼看上去感觉都是正常。但再看之后发现,upstream中的host有些不一样。[::1],这实际是一个IPv6的地址。
这时候你可以查看一下你的机器是否开启了IPv6的地址,linux的命令是:ip address,看看返回结果中是否出现了inet6,如果有,那么恭喜你,原因找到了。
解决办法
解决方法有两种,一个是禁用你机器的IPv6配置,另一个则是修改nginx.conf中的配置。
个人觉得后一个方法更加保险一些,因为这不涉及到你的机器配置,应该相对而言最少。
nginx.conf的修改,则是针对server模块中的location,修改proxy_pass中的host,我们在网上经常看到别人用的是:
proxy_pass http://localhost:18000/test-service/;
但为了强制指定IPv4的地址,需要变成:
proxy_pass http://127.0.0.1:18000/test-service/;
这样操作之后,再观察nginx的error.log,应该就不会再报upstream里含有IPv6地址的错误了。
总结
以上就是我这次错误的整个过程,虽然整个过程不长,但确实让我知道了,作为一个后端开发,我的知识面还是太窄了。而且Bing也是真的好用,最近无法翻墙了,暂时用Bing代替,感觉还是不错的。
有兴趣的话可以关注我的公众号,说不定会有意外的惊喜。
猜你喜欢
- 2024-10-11 老版本nginx存在安全漏洞,请升级至1.18稳定版本
- 2024-10-11 如何用NodeJS读取分析Nginx错误日志
- 2024-09-19 nginx 解决 readv() failed (104: Connection reset by peer)
- 2024-09-19 Godaddy购买SSL之后Nginx配置流程以及各种错误的解决
- 2024-09-19 2023年 Nginx 面试题总结(nginx配置和优化面试)
- 2024-09-19 Web中间件漏洞之Nginx篇(中间件漏洞总结)
- 2024-09-19 Nginx 备忘录 - 03. location 与 error_page
- 2024-09-19 高性能网关-Nginx-proxy_next_upstream自定义配置错误重试机制
- 2024-09-19 如何在 NGINX 中创建自定义 404 错误页面
- 2024-09-19 Linux运维之为Nginx添加错误日志(error_log)配置
你 发表评论:
欢迎- 最近发表
-
- Linux新手必看:几种方法帮你查看CPU核心数量
- linux基础命令之lscpu命令(linux中ls命令的用法)
- Linux lscpu 命令使用详解(linux常用ls命令)
- 如何查询 Linux 中 CPU 的数量?这几个命令要知道!
- 在linux上怎么查看cpu信息(linux如何查看cpu信息)
- 查看 CPU 的命令和磁盘 IO 的命令
- 如何在CentOS7上改变网卡名(centos怎么改网卡名字)
- 网工必备Linux网络管理命令(网工必备linux网络管理命令是什么)
- Linux 网络命令知多少(linux 网络 命令)
- Linux通过命令行连接wifi的方式(linux命令行连接无线网)
- 标签列表
-
- 下划线是什么 (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)
本文暂时没有评论,来添加一个吧(●'◡'●)