Nginx 如何修复 Reponse Status 0 Worker Process Exited on Signal 11
实际上,让我们首先澄清一下:HTTP 没有状态码 0(零)。 问题是 nginx 工作进程在处理请求时死亡,因此连接中断,导致没有任何响应数据的错误。
问题
我们在各种情况下都遇到了这个问题:
- Github Webhooks :webhook 请求未成功完成,响应码始终为 0
- Piwik :我们无法在 Safari 浏览器中打开 Piwik 网络控制面板,也无法在 Android 上添加连接详细信息。 两种情况下的请求都会导致状态为 0 的错误响应(Reponse Status 0)
由于我们在 Strider 和 Piwik 日志中找不到任何应用程序错误,因此问题应该是出在下面的层:nginx。
我们检查了 nginx 的错误日志文件,终于找到了线索。
这是 Ubuntu 上默认的 nginx 错误日志文件位置:/var/log/nginx/error.log
错误日志文件数据:
2022/05/10 09:37:34 [alert] 7955#0: worker process 9835 exited on signal 11 (core dumped)
2022/05/10 09:37:36 [alert] 7955#0: worker process 9853 exited on signal 11 (core dumped)
2022/05/10 09:37:36 [alert] 7955#0: worker process 9855 exited on signal 11 (core dumped)
2022/05/106 09:42:34 [alert] 7955#0: worker process 9857 exited on signal 11 (core dumped)
如果大家有兴趣,我们使用 nginx 版本 1.8.0。
解决方法
要解决此问题,需要修改 nginx 的配置,在 http 块中添加以下行。
Ubuntu上 nginx 的配置文件默认位置是 /etc/nginx/nginx.conf
http {
…
ssl_session_cache shared:SSL:10m;
…
}
Nginx 使用多个工作进程来处理接收到的请求。 ssl_session_cache shared:SSL:10m
使 nginx 在所有工作进程之间共享会话信息。 从现在开始,每个工作进程都有可用的会话信息,并且不会因为缺少请求数据而停止执行请求。
不要忘记重启 nginx 服务。
$ sudo service nginx restart
就是这样。 我们的请求将通过 nginx 流向应用程序,反之亦然,不会出现问题!
相关文章
Nginx 和 uWISG 服务器之间如何配合工作的
发布时间:2023/03/29 浏览次数:158 分类:网络
-
Nginx和uWISG是两个常用的服务器软件,它们可以协同工作以提供更加稳定和高效的网络服务。本文将详细介绍Nginx和uWISG之间的配合工作原理,以及如何配置它们以实现最佳性能。 一、
在 Ubuntu 18.04 上使用 Nginx 安装 WordPress
发布时间:2022/10/15 浏览次数:223 分类:操作系统
-
WordPress 是最受欢迎的开源内容管理系统 (CMS) 之一,与 Drupal 或 Joomla 等其他 CMS 相比,其市场份额高达 60%。 WordPress 可用于开发任何类型的网站,无论是博客、小型企业还是大型企业。
Nginx 运行但是不提供站点服务
发布时间:2022/05/15 浏览次数:186 分类:网络
-
我们最近在一台新机器上安装了 nginx 版本 1.17。 在 sites-available`中创建的配置被符号链接到 `sites-enabled` ,但 nginx 没有为任何域名提供服务。
Nginx 如何修复 Unknown "connection_upgrade" Variable 错误
发布时间:2022/03/28 浏览次数:4924 分类:网络
-
在使用 Websockets 或使用 nginx 配置服务器时,我们可能会在 nginx 配置中遇到 `$connection_upgrade` 变量。 $connection_upgrade 变量默认不可用。 但是,建议在反向代理设置中定义和使用它。
Nginx - 如何修复 “ssl” Directive Is Deprecated, Use “listen … ssl” 错
发布时间:2022/03/23 浏览次数:130 分类:网络
-
本篇文章介绍如何修复 nginx 的 “ ‘ssl’ Directive Is Deprecated, Use ‘listen … ssl’ ” 错误。Nginx 使用类似 YAML 的定义格式来创建配置。 这种格式随着时间的推移通过添加、删除或更改关键
在 Ubuntu 20.04 如何使用 Let's Encrypt 结合 Nginx 配置 https
发布时间:2022/02/03 浏览次数:319 分类:操作系统
-
在本篇文章中,我们介绍了安装了 Let's Encrypt 客户端 certbot,为我们的域名下载 SSL 证书,配置 Nginx 来使用这些证书,并设置自动证书更新。
深入理解 Nginx Location 块匹配算法
发布时间:2022/01/15 浏览次数:76 分类:网络
-
与 Nginx 用于选择将处理请求的 Server 块的过程类似,Nginx 也有一个既定的算法来决定 Server 块中的哪个 Location 块用于处理请求。
深入理解 Nginx 的 Server 块选择算法
发布时间:2022/01/13 浏览次数:91 分类:网络
-
在本篇文章中,我们将讨论一些决定 Nginx 处理客户端请求的细节。 了解这些可以帮助我们在设计 Server 和 Location 时更加得心应手,对于一些请求的现象不至于迷惑。
如何在 Ubuntu 20.04 上安装 Nginx?
发布时间:2022/01/11 浏览次数:110 分类:操作系统
-
Nginx 是世界上最受欢迎的 Web 服务器之一,负责托管互联网上一些最大和流量最高的站点。在本篇文章中,我们将讨论如何在 Ubuntu 20.04 系统上安装 Nginx、调整防火墙、管理 Nginx 进程以及