Rumah >pembangunan bahagian belakang >tutorial php >php无法开启php_curl
网上看了很多方法都不行
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
你的 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 是怎么安装的,
我是这么做的,
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 中去, 就可以了
上周正好遇到同样的问题:
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文件
重装是万能方法