PHP啟動提示Unable to load dynamic library php_curl.dll怎麼辦 ,下面我們來看解決辦法哦
這個問題容易手配PHP的時候出現, 在php.ini中正確開啟了curl擴充後, 在PHPINFO中卻看不到相關的資訊, 而Apache的日誌會顯示以下錯誤:
PHP Warning: PHP Startup: Unable to load dynamic library 'D:\DEV\ENV\php-5.3.10\ext\php_curl.dll' - xd5xd2xb2xbbxb5xbdxd6xb8xb6xa8xb5xc4xc4xa3xbfxe9xa1xa3rn in Unknown on line 0
什麼原因造成的這個問題呢?
答案是curl擴充對庫檔案有依賴, 就像在Linux下面編譯PHP的時候也需要安裝依賴的庫一樣.
在PHP官網手冊的Windows下安裝擴充庫的頁面上已經詳細的標註了PHP所有的擴充檔案依賴那些庫. 其中特別提示了以下內容 (http://php.net/manual/zh/install.windows.extensions.php)
有些擴充庫需要額外的 DLL 才能工作。其中一部分包括在發行包裡,PHP 4 中在 C:phpdlls目錄下,PHP 5 中在主目錄下,但還有一些,例如 Oracle( php_oci8.dll)所需要的 DLL 沒有綁定在發行包裡。如果安裝 PHP 4,將綁定的 DLL 從 C:phpdlls拷貝到主目錄 C:php中。別忘了將 C:php放到系統路徑 PATH中去
在頁面的介紹中,我們可以查詢到curl擴充依賴libeay32.dll, ssleay32.dll這兩個庫檔案, 這兩個檔案已經附屬在PHP的Windows程式包中,我們無需去單獨下載. 搞清楚了這些, 解決方案也很簡單了: 讓Windows或者Apache能順利載入到這個2個dll檔案即可, 下面我列出幾個解決方案
方案1 將libeay32.dll, ssleay32.dll拷貝到c:windowssystem32檔案夾中
方案2 將你PHP程式的目錄加入到系統的PATH變數中即可
方案3 如果你使用的是Apache伺服器且使用模組的方式來運行PHP的話, 可以在httpd.conf中載入PHP模組的配置語句之前加上下面兩句話讓Apache來載入這兩個dll, 例子如下:
| 代碼如下 |
複製代碼 |
LoadFile "D:DEVENVphp-5.3.10ssleay32.dll" LoadFile "D:DEVENVphp-5.3.10libeay32.dll" LoadModule php5_module "D:DEVENVphp-5.3.10php5apache2_2.dll" |
http://www.bkjia.com/PHPjc/632185.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/632185.htmlTechArticlePHP啟動提示Unable to load dynamic library php_curl.dll怎麼辦 ,下面我們來看解決辦法哦 這個問題容易手配PHP的時候出現, 在php.ini中正確開啟了curl擴充...