1. 程式人生 > >linux伺服器中不支援soap及bcmul函式的結局方法

linux伺服器中不支援soap及bcmul函式的結局方法

新的程式裡用了webserice介面,部到伺服器,先是提示:bcmul() 函式不可用,網上搜索一番,得知這是php的高精度函式,需要在編譯php的時候加入此模組,於是在編譯腳本里增添 “–enable-bcmath” 後重新編譯、重啟apache然後此錯誤解決;

然後有遇到報錯“Class ‘SoapClient’ not found”,網上搜索有很多解決辦法,總結如下:

1.把php的擴充套件開啟;

對於此我要說一下,很多人總喜歡以偏概全,因為windows伺服器上的結局辦法就是把extension=php_soap.dll的擴充套件開啟,但是這對linux壓根沒用,所以失敗;

2.擴充套件編譯extension = “soap.so”;

這個方法算是比較靠譜的,OCI8模組大多也通過此方式安裝擴充套件,這裡要用到所謂的phpize,但是不知道是我人品問題還是怎麼搞的,這樣編譯的oci也不成功,編譯的soap也不成功

3.編譯腳本里加入“–enable-soap”;

這是最後解決問題的辦法,與上面的高進度函式庫類似,重新編譯一下php就好了,問題解決。

總結:最近幾天在配一臺64位redhat AS 5.1伺服器的環境,gd和oci這倆擴充套件都快煩死我了,網上的文章參照了一堆,但是發現個問題,就是網上很多文章都是抄襲,一種解決辦法找了好幾十個網站上都是一樣的,包括語句中的語病,很多技術人員這是對自己不負責任,如果你真的領悟了,自己寫一下就行了,不領悟就別摘抄,既丟人又讓搜尋增加難度;