如何在 PHP / XAMPP 中启用 cURL
Posted
技术标签:
【中文标题】如何在 PHP / XAMPP 中启用 cURL【英文标题】:How to enable cURL in PHP / XAMPP 【发布时间】:2010-11-23 17:54:12 【问题描述】:如何在 php 中启用 cURL?
【问题讨论】:
windoze 还是 linux? 视窗。谢谢大卫。我解决了它。实际上我是通过在 xampp\apache\bin\php.ini 文件中取消注释 extension=php_curl.dll 来做到的 一个简单易学的 curl 基础教程 -> technofusions.com/curl-in-php-tutorial-basics 【参考方案1】:在Debian 与Apache 2:
apt-get install php5-curl
/etc/init.d/apache2 restart
(php4-curl 如果是 php4)
【讨论】:
注意重启是必要的。 +1 给@Nelson。安装后 /looks/ 看起来像是重新启动,但实际上是重新加载。 尼尔森:应该没必要,但对我来说是这样。即使 apt-get 重新启动了 apache,它也没有工作,直到我自己第二次重新启动它。奇怪。 如果失败,请尝试使用“apt-get update”更新存储库 另外,重新加载 apache 是不够的。我不得不重新启动它。【参考方案2】:由于您使用的是 XAMPP,请取消注释该行
;extension=php_curl.dll
在xampp\apache\bin\php.ini
,然后重启Apache服务。
注意:在较新的 XAMPP 版本中,PHP 已移至 xampp 根文件夹 xampp\php\php.ini
。
【讨论】:
【参考方案3】:Windows 7 的步骤:
-
确保 PHP 引擎使用的 php.ini 文件是您认为的那个。
确保 php.ini 中的 extension_dir 正确设置为 ext 文件夹
确保 php.ini 中的
extension=php_curl.dll
未注释
最后,也许是大多数人不知道的:
4. 确保 Windows System32 文件夹中有这两个文件:
libeay32.dll
ssleay32.dll
如果没有,您可以从php
文件夹中复制这两个文件。
【讨论】:
实际上,这不是问题,因为 php 不是托管在 IIS 中,而是托管在 Apache(使用 wamp)中。原来 wamp 的版本不兼容...必须添加 apache 2.2.9 和 php 5.3.1,并使用 wami tray->Apache(或 PHP)->Version->____ 切换到这些版本,如此处所述:***.com/q/10939248/79444 除了第4个要求,对于win7 64bit,这2个文件应该去C:\windows\SysWOW64。 @WaiKit Kung 你太棒了......完成了第四步并为我工作。谢谢。 我必须将以下内容添加到我的 PHP 代码中才能正常工作:curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
也许这就是问题所在。
Ensure extension_dir in php.ini is correctly set to the ext folder
这对我来说完成了这项工作。【参考方案4】:
我发现文件位于:
C:\xampp\php\php.ini
未注释:
;extension=php_curl.dll
【讨论】:
【参考方案5】:对于 Ubuntu(可能还有所有基于 Debian)的 Linux 发行版:
sudo apt-get install php5-curl
sudo /etc/init.d/apache2 restart
你可能以前见过PHP Fatal error: Call to undefined function curl_init()
。
【讨论】:
【参考方案6】:在SUSE Linux:
zypper in php5-curl
rcapache2 restart
【讨论】:
【参考方案7】:你compile your PHP using --with-curl
。
【讨论】:
【参考方案8】:由于 XAMPP 进行了一些修改,该文件现在位于 xampp/php/php.ini
。
【讨论】:
【参考方案9】:基本提示:在 php.ini 文件中启用 CURL 后,您需要重新启动 Web 服务器才能使其工作(我的经验表明)。
【讨论】:
【参考方案10】:PHP 7^ 版本:
sudo apt-get install php-curl
sudo service apache2 restart
【讨论】:
sudo service apache2 reload 也可以,我相信重新加载更表明不会停止服务器。【参考方案11】:实际上我是通过在 xampp\apache\bin\php.ini 文件中取消注释 extension=php_curl.dll
来做到的。
【讨论】:
【参考方案12】:如果您使用的是MAMP,则默认启用cURL。
【讨论】:
【参考方案13】:您可以检查phpinfo()
(创建一个包含并浏览到它的脚本)。这将告诉您是否确实启用了它。如果没有,请阅读here。
不建议胆小的 Windows 开发人员使用。
【讨论】:
nope Mark.. 我需要准确启用 cURL 支持。实际上我是通过在 xampp\apache\bin\php.ini 文件中取消注释 extension=php_curl.dll 来做到的。但它没有反映。还有什么想法 你重启xampp了吗?您的 xampp 日志文件中是否出现错误?你的 xampp php 扩展目录中有 php_curl.dll 吗?【参考方案14】:对于 XAMPP 中的 Windows 操作系统用户(它对我有用)。
第 1 步:转到 C:\xampp\php\php.ini
编辑这个文件 php.ini
找到 curl - 你会看到一行 ;extension=php_curl.dll。
删除分号 (;)extension=php_curl.dll。所以这条线看起来像
;extension=php_curl.dll
到
extension=php_curl.dll
第 2 步: 从 php 文件夹中复制 ssleay32.dll、libeay32.dll。 将其粘贴到 C:\Windows\System32\
第 3 步: 重新启动系统。 Curl 将成功运行。
【讨论】:
【参考方案15】:检查 curl 模块是否可用
$ ls -la /etc/php5/mods-available/
启用 curl 模块
$ sudo php5enmod curl
来源: http://baligena.com/installing-curl-ubuntu-server/
【讨论】:
【参考方案16】:检查php版本, 如果你安装的是php 7.0版本
sudo apt-get install php7.0-curl
sudo service apache2 restart
如果你安装的是php 5.6版本
sudo apt-get install php5-curl
sudo service apache2 restart
【讨论】:
【参考方案17】:如果以上方法都不能解决您的问题并且安装了 php-x86(Windows 32 位),那么问题可能出在 openssl - 更多信息:How to fix libeay32.dll was not found error
【讨论】:
【参考方案18】:在opensuse下安装php5-curl
:
sudo yast2
->软件->软件管理->搜索curl->检查php5-curl大小写并接受。
安装后需要重启apache服务器
service apache2 restart
【讨论】:
以上是关于如何在 PHP / XAMPP 中启用 cURL的主要内容,如果未能解决你的问题,请参考以下文章
在 Xampp for WinXP 上的 php.ini 中启用 curl 时出现问题
使用 XAMPP for Windows 为 PHP 启用 cURL 库