網上看了很多方法都不行
phpinfo裡面Loaded Configuration File是C:\Windows\php.ini 所以這個是沒問題的
修改php.ini裡
extension=php_curl.dll前面去分號
extension=php_openssl.dll前面去分號
extension_dir = "D:\AppServ\php5\ext"
php_curl.dll,libeay32.dll,ssleay32.dll,php5ts.dll這4個檔案我放到了C:\Windows\System32,C:\Windows\SysWOW64甚至連C:\Windows\我都放了
在Apache的httpd.conf的檔案裡我加入了
LoadFile D:/AppServ/php5/libeay32.dll
LoadFile D:/AppServ/php5/ssleay32.dll
以上操作都試了還是不行
回複討論(解決方案)
你的 Windows 是 64 位元的,請將複製到 C:\Windows\System32 中去的 32 位的 dll 統統刪去
因為該目錄存放的都是 64 位元的,若把 32 位的 dll 放在其中就誤事了
C:\Windows\SysWOW64 才是 32 位相容目錄
如果你需要 LoadFile D:/AppServ/php5/libeay32.dll
那麼應寫作 LoadFile C:/Windows/SysWOW64/libeay32.dll
你的 Windows 是 64 位元的,請將複製到 C:\Windows\System32 中去的 32 位的 dll 統統刪去
因為該目錄存放的都是 64 位元的,若把 32 位的 dll 放在其中就誤事了
C:\Windows\SysWOW64 才是 32 位相容目錄
如果你需要 LoadFile D:/AppServ/php5/libeay32.dll
那麼應寫作 LoadFile C:/Windows/SysWOW64/libeay32.dll
我把放到C:\Windows\System32 和C:\Windows\中的那4個dll都刪去了
Apache的httpd.conf 裡
LoadFile D:/AppServ/php5/libeay32.dll
LoadFile D:/AppServ/php5/ssleay32.dll
改成了
LoadFile C:/Windows/SysWOW64/libeay32.dll
LoadFile C:/Windows/SysWOW64/ssleay32.dll
但還是不行
你的 Windows 是 64 位元的,請將複製到 C:\Windows\System32 中去的 32 位的 dll 統統刪去
因為該目錄存放的都是 64 位元的,若把 32 位的 dll 放在其中就誤事了
C:\Windows\SysWOW64 才是 32 位相容目錄
如果你需要 LoadFile D:/AppServ/php5/libeay32.dll
那麼應寫作 LoadFile C:/Windows/SysWOW64/libeay32.dll
或者說跟我下的php版本有關,我下的是32位的
不知道你 php 是怎麼安裝的,
我是這麼做的,
PhpIniDir "d:/wamp/php"
LoadModule php5_module "d:/wamp/php/php5apache2_2.dll"
再在 php.ini 中設定:
extension_dir="d:/wamp/php/ext"
開啟curl 擴充, 把 d:/wamp/php 加到環境變數 PATH 中去, 就可以了
不知道你 php 是怎麼安裝的,
我是這麼做的,
PhpIniDir "d:/wamp/php"
LoadModule php5_module "d:/wamp/php/php5apache2_2.dll"
再在 php.ini 中設定:
extension_dir="d:/wamp/php/ext"
開啟curl 擴充, 把 d:/wamp/php 加到環境變數 PATH 中去, 就可以了
我的環境是用appserv安裝的
後來php版本低我就換成了 5.4.41
--------------------
phpini是預設的c盤windows下
LoadModule php5_module和extension_dir也沒錯
curl擴充也開了 php的路徑也在環境變數 PATH 中
上周正好遇到同樣的問題:
windows xp 32
apache2.2
php5.4.36 vc9 Thread Safe
啟動apache過程中提示warning php startup
查看apache error.log
PHP Warning: PHP Startup: in Unknown on line 0
沒有任何提示,逐一關閉擴充,發現是php_curl載入時報錯,而且phpinfo()中curl沒有載入上
解決辦法:
將php安裝目錄下的libeay32.dll,libssh2.dll,php5ts.dll,php_curl.dll,ssleay32.dll 複製到system32目錄下
在httpd.conf 中載入如下依賴檔案
LoadFile c:/php5.4.36/php5ts.dll
LoadFile c:/php5.4.36/libeay32.dll
LoadFile c:/php5.4.36/ssleay32.dll
LoadFile c:/php5.4.36/libssh2.dll
注意主要是php_curl.dll,網上的解決方案都沒提這個檔案
兩個方法都可以解決,但是我本機裝了多個版本php,所以不適合放到system32,就改的httpd.conf
試著在系統變數裡加php.exe路徑
敬請不是在 64 位元系統使用 32 位 php 的朋友免開尊口!
在 32 位系統中配置 php 時,任何複製檔案的做法都是錯誤的!
連phpinfo裡都沒有任何關於curl的東西,也不說disable或者enable 直接就搜不到
phpinfo中沒有,就表示安裝失敗或沒有開啟,檢查一下。
不知道樓主這個問題解決了沒有,我注意到了4樓把PhpiniDir放到了LocadModule的上邊,意外的是redis出來了,而之前我是curl和redis都沒有,不管怎麼說,算是解決了一個,再找找,怎麼把curl弄出來吧。
沒有開啟curl
頁面提示什嗎?可以通過phpinfo查看下curl擴充是否開啟
到官方下載對應版本的curl檔案
重裝是萬能方法