Ubuntu 20.04 中的 nginx 存在一个错误,这是由于核心 libperl 导致的,在连续两次重新加载服务时会导致段错误(systemctl reload nginx
)。
这是错误:1897561 - libperl.so.5.30.0 导致 nginx 出现段错误
由于这个错误已经存在很久了,我感觉它在一段时间内都不会被修复,所以我试图找到一个补丁来防止它通过映射或完全禁用它来reload nginx
运行。restart
有什么办法可以做到这一点?
答案1
抱歉,但已经修复(查看票号 1831;该问题与 bug 1897561 相关,但更新且信息更丰富)。问题出在perl 版本 5.30(5.28 没有这个问题)并且在 perl 版本 5.30.2 及更高版本中已修复。
不过,您需要 22.04 才能实现这一点,而且我怀疑在 20.04 上升级 perl 并不容易,也不是一个好主意。如果您能做到这一点,这将是修复它的一种选择。
如果你不使用 perl 应用程序,你也可以这样做:
rm -f /etc/nginx/modules-enabled/50-mod-http-perl.conf
sudo systemctl restart nginx
并且service nginx reload
不会再崩溃。