apache error.log 中的“[notice] child pid XXXX exit signal Segmentation fault (11)"

2022-01-12 00:00:00 segmentation-fault php apache

首先:这不是重复的,因为提供的解决方案不同于任何类似问题的解决方案和 "[notice] child pid XXXX exit信号分段错误 (11)"在 apache error.log 中不再接受任何答案.另外我还不能评论 SO.

First off: this is no duplicate as the solution provided differs from any solution for similar questions and "[notice] child pid XXXX exit signal Segmentation fault (11)" in apache error.log does not accept any more answers. Also I cannot comment on SO yet.

我刚刚从 PHP-7.0 升级到 PHP-7.3(或任何版本的组合),现在正在升级

I just upgraded from PHP-7.0 to PHP-7.3 (or any version combo for that matter) and am now getting

[notice] child pid XXXX exit signal Segmentation fault (11)

[notice] child pid XXXX exit signal Segmentation fault (11)

在我的 apache error.log 文件中.

in my apache error.log file.

此问题的其他解决方案不适用:

Other solutions to this question did not apply:

  • Apache LOG: child pid xxxx exit signal Segmentation fault (11)
  • centos Apache "Child pid *** exit signal Segmentation fault (11)" in error_log
  • child pid xxxxx exit signal Segmentation fault (11)

TIA

推荐答案

检查你的 PHP-FPM 和 PHP 版本是否匹配.确保有一个(正确的)PHP-FPM 配置分别对应于您的 PHP 和 PHP-FPM 版本.

在 Debian 系统上应该有这样的东西:

On a Debian system there should be something like this:

/etc/php/7.3/fpm
/etc/php/7.3/fpm/php.ini
/etc/php/7.3/fpm/php-fpm.conf
/etc/php/7.3/fpm/pool.d
/etc/php/7.3/fpm/conf.d
/etc/php/7.3/fpm/pool.d/www.conf

在我的系统上,/etc/php/7.3/fpm 目录丢失了.原因:遗留的 PHP-FPM 没有得到更新.在安装 PHP-FPM 更新并使用我调整的配置同步新的 fpm 配置后,没有更多的段错误,一切都开始像更新前一样工作.

On my system the /etc/php/7.3/fpm directory was missing. Reason: legacy PHP-FPM didn't get updated. After installing the PHP-FPM update and synch'ing the new fpm config w/ my tweaked config there were no more segfaults and everything started working as it did before the update.

这些子段错误的根本原因是特别难以隔离,也许这个 SO 答案可以为其他人省去麻烦.

The root cause for those child segfaults was particulary nasty to isolate, maybe this SO answer can save others the hassle.

HTH

相关文章