Curl 擴展不起作用 - PHP 警告:PHP 啟動:無法載入動態庫 php_curl.dll
我在 64 位系統上執行的 Windows 7 作業系統上使用 Apache 2.2 伺服器、PHP 5.3.6。
在啟動 Apache 伺服器時,此錯誤出現在 apache 錯誤日誌中 -
PHP 警告:PHP 啟動:無法載入動態庫 ‘D:\php5\ext\php_curl.dll’ - 找不到指定的模組。\r\n 在第 0 行的未知中
以下是 php.ini 文件中提到的其他擴展 -
extension=php_curl.dll extension=php_gd2.dll extension=php_mbstring.dll extension=php_mysql.dll extension=php_xsl.dll extension=php_memcache.dll
回
phpinfo()
顯不顯示已載入捲曲擴展,但已載入其他擴展。然而,該
php_curl.dll
文件與其他文件一起存在於正確的位置 - D:\php5\ext\php_curl.dll
phpinfo()
表明extension_dir = D:\php5\ext
所以,這也是正確的。
更多細節
我是這個團隊的新成員,我在這個 Windows 7 系統上分別設置了 Apache、PHP,一切正常。
我們的項目需要大量的 httpd conf 更改,所以我被要求用團隊的目前版本簡單地覆蓋 httpd conf 文件。我也這樣做了,只是更改了 ServerName、ServerAdmin 等。我還複製了他們的 PHP 安裝目錄。
除了這個擴展之外的所有東西都工作正常。
原因很可能是缺少一些必要的 dll 文件。檢查我的另一個問題Apache start failed after apache config modify,顯示語法錯誤,在遇到一些類似的瘋狂錯誤後,無法將 php5apache2_2.dll 載入到我稍後放入的伺服器中。我已經描述了那裡的解決方案。
PHP 警告:PHP 啟動:無法載入動態庫 ‘…\php-5.6.9\ext\php_curl.dll’
在 Windows Server Core 2012 x64 cURL 上使用 PHP 5.6.9 無法正常工作,儘管在我的 php.ini 中取消註釋 php_curl.dll 擴展並重新啟動 Apache 2.4 服務,但未顯示在 phpinfo 中。在我的 $evn:path 中添加了 php 路徑和 php\ext 路徑。沒有喜悅。
修復:我不需要下載任何其他 php_curl.dll 文件,也找不到適用於 PHP 5.6 的文件。最後的工作是將這三個文件複製到 Apache24\bin 文件夾中,然後重新啟動 Apache:
libeay32.dll libssh2.dll ssleay32.dll
不需要將這些複製到 System 或 System32。