2012-06-26 93 views
0

PHP GD擴展加載和本地服務器上的工作,但它是不正確我們活的服務器上,即使我使用所有完全相同的文件加載。PHP GD擴展不加載在IIS 7.5

(PHP GD工作正常這裏) 本地服務器:微軟的Windows Server 2003的Small Business Server SP2 IIS版本:6

然後我複製了完整的 「C:\ PHP」 文件夾從本地服務器在活動服務器上的「C:\ Program Files(x86)\」。該「PHP」文件夾中包含ext文件夾和「php_gd2.dll」文件。我也在「php.ini」中將路徑從「C:\ PHP」更改爲「C:\ Program Files(x86)\」。但是,PHP不在活動服務器上加載。

PHPINFO Local:http://jsfiddle.net/hFKfx/ 
PHPINFO Live: http://jsfiddle.net/h77Hy/ 

我對PHP不太好。請幫忙。

+0

由於它是一個安裝/遷移問題而不是編程時,可能更適合於[serverfault.com](http://serverfault.com)。 – Wiseguy

+0

感謝您指出。我希望我可以將這個問題轉移到該服務器上。 –

回答

1

在WIN2K3/IIS6,你正在運行PHP作爲一個ISAPI模塊(線程安全的)。
在Win 7/IIS7.5,你正在運行PHP的FCGI模塊(非線程安全的)。

這可能是你的問題。您不能混合和匹配線程安全(TS)/非線程安全(NTS)擴展與核心PHP。如果你只是複製了一切,你可能有TS擴展。您需要下載並使用NTS。

archive link to PHP 5.2.6 NTS

爲了驗證這一假設,檢查其中的php.ini指定日誌啓動錯誤。如果你登錄啓動錯誤,你應該會看到類似的東西:

PHP的警告:PHP啓動:GD擴展:無法初始化模塊
模塊與構建ID = API20041225,TS編譯,VC6
PHP與版本ID = API20041225,NTS,VC6編譯
這些選項需要匹配

(注意 「TS」 與 「NTS」)

希望有所幫助。如果沒有,也許你會在日誌中發現其他內容,指出問題所在。

+0

對不起,這麼noob。我只是下載了該zip文件並將所有內容覆蓋到了PHP文件夾。現在事實證明「Loaded Configuration File \t(none)」。我將文件名從「php.ini-recommended」更改爲「php.ini」。配置文件也不會被加載。 :(我應該改變「FCGI」模塊爲「IsapiModule」?謝謝。 –

+0

FCGI vs ISAPI不是一個簡單的配置更改;它是如何在IIS中設置PHP。是否曾經找到PHP日誌查看是否有任何啓動錯誤? – Wiseguy

+0

OMG。我搞砸了所有的東西。即使PHPMyAdmin現在不工作。它說:「無法加載mysql擴展。請檢查您的PHP配置 - Documentation」。我現在在phpinfo()中看不到任何擴展名。運行「php.exe」,它沒有顯示任何錯誤 –