由於我的環境是通過源碼編譯安裝的,安裝的時候配置信息和一些其他擴展沒安裝或設置好;
php.err文件一直有這些提示,雖然不影響服務啟動,但是看着心好累啊,決定要消滅他們。
問題描述:
出現原因:
上面的報錯圖有2種報錯的文件類型,一個.dll文件(這種屬於Window擴展文件)一個.so(Linux擴展);我使用的是centos7,所以.dll文件的問題只需要在php.ini配置文件的相關配置使用;注釋掉就行;
.so文件這個我有安裝mcrypt擴展,查看了下報錯的路徑下確實沒有mcrypt.so這個文件。
1. cd /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303 ;
2. ls
解決方案:
方法一:
查找這個文件跑哪去了 find / -name mcrypt.so
找到之后創建軟連接到剛剛報錯的路徑。
So sad,這個方式我失敗了,該報錯的還是在報錯着。
方法二:
我這邊是報mcrypt的問題,如果是其它的.so文件,如果擴展不需要直接在php.ini文件中注釋掉即可;如果有需要,將文件夾名換成相應的報錯的文件名;
首先,確保自己安裝了相應的擴展;
其次,這邊需要使用到phpize,也需要先安裝phpize哦
先進入php安裝目錄下的ext文件夾,查看是不是有mcrypt文件夾,如果存在:
1. cd mcrypt ;
2. /usr/local/php/bin/phpize ;
3. ./configure --with-php-config=/usr/local/php/bin/php-config ;
4. make && make install
得到下邊的結果就可以啦~~~
然后就是重新開啟PHP和NGINX服務