所属分类: 网站相关
最近笔者收到一条朋友发来的错误消息。原来,这位朋友发现PHP的cURL功能没有开启。在这之前,笔者并未有注意过cURL异常。笔者让这位朋友使用phpinfo()
函数查看后,发现只有cURL Sterling Hughes
这一条相关的配置。

经过研究发现,此错误出现以及解决有一定的条件。出错的PHP环境为:Windows、Apache。函数cURL是一个非常简单的打开外部链接的函数,对于很多开发者来说,此函数十分重要。朋友也很着急,那么如何解决呢?
首先,需要确定PHP有无正确编译cURL,若在phpinfo()
函数运行的结果中出现了上述的cURL Sterling Hughes
字段,则说明已经完成了编译。
其次,查看php.ini
文件中是否成功配置了extension=curl
以及extension_dir=
选项,前者确保开启了cURL功能,后者确定了cURL动态文件所在的具体位置。

在确认上述没问题的情况下。笔者提出的解决办法(也是笔者自己发现的最简单的办法)在Apache配置文件httpd.conf
中加入以下代码:
LoadFile "C:/xxxphp-pathxxx/libssh2.dll"
其中xxxphp-pathxxx
为PHP程序文件的根目录。
也可以试试网友提出的其他几种办法:
- 直接替换他人编译好后的php_curl.dll文件。
- 将主要的php文件夹添加到Windows中的
Path/Env
变量中(使libeay32.dll和ssleay32.dll文件可访问;也可以将两个文件复制到Windows/System32
文件夹内,但此办法较为麻烦不能一劳永逸)。 - 在Windows中将
Apache/bin
文件夹添加到Path/Env
变量中。 - 将文件libssh2.dll从PHP文件夹复制到Apache的bin文件夹(Apache似乎需要此文件才能使PHP的curl在Windows中工作)。

重启Apache后,可以看到朋友的问题已经完美解决啦~
更多新奇网络功能、资源,可以持续关注 无主界 喔~
本文最后更新于2019年10月29日,已超过 1 年没有更新,如果文章内容或图片资源失效,请留言反馈,我们会及时处理,谢谢~
2019年10月28日 沙发
嘿嘿嘿
