[web服務器]APACHE日誌child pid XXXXXX exit signal Segmentation fault (11)解決

2014-4-13日補充:

今天本地搭建了相同環境進行測試,最終發現問題所在,原來是由於php.ini中加載zend擴展的時候,用的extension進行引用

[Zend]
zend_loader.enable=1
zend_loader.disable_licensing=0
extension=/usr/local/zend/ZendGuardLoader.so

紅色標記位置該改爲 zend_extension即可。


===========================================================================


近日新開的vps都是centos6的,按照往常一樣配置好web服務器,如下:

httpd/2.2.15
php/5.3.3 with eAccelerator with Zend Guard Loader v3.3
修改好apache配置文件後,習慣性的先檢查配置文件

/etc/init.d/httpd configtest

一切正常,然後重新加載配置文件

/etc/init.d/httpd reload

本來應該是一切無誤的,打開網址測試,竟然無法打開,檢查apache運行狀態,竟然掛了
/etc/init.d/httpd status

看來是有問題,百度&google一陣後無果,手動開啓apache,測試了下,只有reload纔會掛掉,暫且擱置了,先把網站上線再說。運行了幾日,毫無突然掛掉的跡象,僅僅在error_log中看到有大量級別爲notice的錯誤如下:

[Wed Apr 09 00:10:17 2014] [notice] child pid 14786 exit signal Segmentation fault (11)

今天又上新的vps,同樣配置後,以上現象又重現,然後嘗試找出原因。

首先把apache的錯誤日誌調到debug級別,嘗試reload命令後,錯誤依舊,但日誌記錄並未有異常。

然後纔想起查看下系統日誌:

tail -f /var/log/messages
查看到有2條跟php有關的錯誤:

Apr  9 15:57:15 localhost kernel: php[4924]: segfault at 65fd47 ip 0065fd47 sp bfa63660 error 14 in libkrb5.so.3.3[765000+d6000]
Apr  9 16:00:20 localhost kernel: php[4934]: segfault at d8ed47 ip 00d8ed47 sp bfbaa830 error 14 in libpthread-2.12.so[f22000+17000]

然後第一想到了zendGuardLoader這東西,在php.ini裏註釋掉之前加入的zend配置,重啓apache,再行測試,一切又無異常了。

由此看來,可能由於rpm安裝的php本身的一些問題,再加上zendguardLoader,產生了異常,所以導致apache跟着受了影響。

這塊知道的不多,所以只能是這麼說了,瞭解這塊的可以指教一下。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章