昨天想要寫一個PHP頁面,以實現服務器端文件下載代理的功能,計劃通過cUrl來實現這個功能。
於是搜索了cUrl的使用搜索,例子也都清晰易懂。開啓cUrl的教程也都挺多,不過內容都一樣。但我按這些教程走下來之後,在運行的時候還是出現瞭如下錯誤:
Fatal error: Call to undefined function curl_init() in ...
於是我又檢查了設置,並按如下順序檢查了配置:
php中開啓curl擴展的方法詳解:
http://www.jbxue.com/article/9576.html
但是!但是問題還是沒有解決。直到後來搜索到http://bbs.csdn.net/topics/100086294並仔細閱讀,才發現複製libeay32.dll,ssleay32.dll的路徑出錯。
在Win7 64位下,這兩個文件應該複製到syswow64,而不是system32。
綜上,解決步驟如下:
1、檢查php.ini的extension_dir值是哪個目錄,檢查該目錄下有無php_curl.dll。(若沒有,則需下載)。
2、將PHP文件夾下的三個文件libeay32.dll, ssleay32.dll複製到system32下(64位複製到syswow64下);
3、將php.ini(c:WINDOWS目錄下)中的;extension=php_curl.dll中的分號去掉;
4、重啓apache或者IIS。