Назад | Перейти на главную страницу

Дамп ядра PHP5-FPM из-за какой-то странной ошибки Zend

Я получаю чрезвычайно странный дамп ядра, который ссылается на «Отсутствие Zend», хотя zend установлен и работает правильно.

Это начало проявляться сегодня после того, как я сделал apt-get upgrade, и по какой-то причине он больше не позволяет мне переходить на более раннюю версию, но это было незначительное изменение, поэтому я не знаю, что изменилось.

Вот дамп ядра:

Core was generated by `php-fpm: pool www                                                       '.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  _zend_mm_free_int (heap=0x7fcb09b027d0, p=0x7fcb09b027e0) at /build/php5-oxmf3S/php5-5.6.4+dfsg/Zend/zend_alloc.c:2104
2104    /build/php5-oxmf3S/php5-5.6.4+dfsg/Zend/zend_alloc.c: No such file or directory.
(gdb) bt
#0  _zend_mm_free_int (heap=0x7fcb09b027d0, p=0x7fcb09b027e0) at /build/php5-oxmf3S/php5-5.6.4+dfsg/Zend/zend_alloc.c:2104
#1  0x00000000006ac920 in sapi_deactivate () at /build/php5-oxmf3S/php5-5.6.4+dfsg/main/SAPI.c:525
#2  0x00000000006a3c35 in php_request_shutdown (dummy=<optimized out>) at /build/php5-oxmf3S/php5-5.6.4+dfsg/main/main.c:1893
#3  0x000000000046565d in main (argc=162534288, argv=0x7fcb09b01c30) at /build/php5-oxmf3S/php5-5.6.4+dfsg/sapi/fpm/fpm/fpm_main.c:2071
(gdb)

Та же проблема для меня при обновлении до PHP 5.5.9-1ubuntu4.11, моя трассировка стека выглядит так же, мне удалось решить ее, изменив конфигурацию nginx. Этот работал вечно и перестал работать после обновления:

location ~ \.php$ {
  try_files $uri =404;
  fastcgi_split_path_info ^(.+\.php)(/.+)$;
  fastcgi_pass unix:/var/run/php5-fpm.sock;
  fastcgi_index index.php;
  include fastcgi_params;
}

Добавление fastcgi_param Директива помогла мне решить проблему, поэтому я просто добавил ее на каждый сайт на своем сервере:

location ~ \.php$ {
  try_files $uri =404;
  fastcgi_split_path_info ^(.+\.php)(/.+)$;
  fastcgi_pass unix:/var/run/php5-fpm.sock;
  fastcgi_index index.php;
  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # This one
  include fastcgi_params;
}

Но эта проблема продолжает оставаться немного странной.