php-fpm啟動不了的解決方法:1、重新下載一個64位元的「ZendGuardLoader.so」;2、將其放到「/usr/local/zend/」下;3、重新執行“lamp php-fpm start”即可。
本文操作環境:ubuntu 16.04系統、PHP5.3版、DELL G3電腦
php-fpm啟動不了怎麼辦? php-fpm啟動失敗?
啟動報錯現象:wrong ELF class: ELFCLASS32
test@ubuntu:/usr/local/zend$ sudo lnmp php-fpm start +-------------------------------------------+ | Manager for LNMP, Written by Licess | +-------------------------------------------+ | http://lnmp.org | +-------------------------------------------+ Starting php-fpm Failed loading /usr/local/zend/ZendGuardLoader.so: /usr/local/zend/ZendGuardLoader.so: wrong ELF class: ELFCLASS32 [03-May-2017 00:03:15] ERROR: FPM initialization failed failed
此錯誤是因為php-fpm模組所調用的ZendGuardLoader.so模組為32位元的模組,然而當前系統為64為系統,因此在啟動時報錯了,重新下載一個64位的ZendGuardLoader.so放到/ usr/local/zend/下,然後重新執行lamp php-fpm start即可。
以下為修復步驟:
#以file指令查看目前的ZendGuardLoader.so的檔案訊息,可以看到目前so檔案為32位的檔案。
#test@ubuntu:/usr/local/zend$ file ZendGuardLoader.so |
ZendGuardLoader.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, stripped |
下載解壓縮64位元的ZendGuardLoader,然後替換原來的.so檔案之後重新啟動php-fpm
#wget http://downloads.zend.com/guard/5.5.0/ZendGuardLoader-php-5.3-linux-glibc23 -x86_64.tar.gz |
#tar -xvf ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz |
cp ZendGuardLoader-php-5.3-linux-glibc23-x86_64/php-5.3.x/ZendGuardLoader.so /usr/local/zend / |
重新用file看下取代之後的ZendGuardLoader.so,可以看到目前為64位元的檔案了。
#test@ubuntu:/usr/local/zend$ file ZendGuardLoader.so |
ZendGuardLoader.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, stripped |
推薦學習:《PHP影片教學》
以上是php-fpm啟動不了怎麼辦?的詳細內容。更多資訊請關注PHP中文網其他相關文章!