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,我的堆栈跟踪看起来一样,我设法通过更改nginxconfiguration来解决它。 这个一直工作到永远,升级后停止工作:

 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; } 

但这个问题仍然有点奇怪。