WAMP卷曲安装

时间:2010-08-15 07:40:23

标签: php apache curl wamp

我已从php.ini文件

取消注释以下内容
;extension=php_bz2.dll
extension=php_curl.dll
;extension=php_dba.dll

另外,我已将php_curl.dll复制到windows \ system32并重启apache服务器。

我正在测试以下脚本

<?php

$curl_handle=curl_init();
curl_setopt($curl_handle,CURLOPT_URL,'http://example.com');
curl_setopt($curl_handle,CURLOPT_CONNECTTIMEOUT,2);
curl_setopt($curl_handle,CURLOPT_RETURNTRANSFER,1);
$buffer = curl_exec($curl_handle);
curl_close($curl_handle);

if (empty($buffer))
{
    print "Sorry, example.com are a bunch of poopy-heads.<p>";
}
else
{
    print $buffer;
}
?>

并收到以下错误

Fatal error: Call to undefined function curl_init() in C:\wamp\www\t.php on line 3

任何帮助将不胜感激?

9 个答案:

答案 0 :(得分:6)

确保您已从右侧php.ini文件中取消注释扩展名。您应该通过phpinfo()命令检查扩展是否已启用。

答案 1 :(得分:4)

甚至更简单,点击通知区域(屏幕右下角)的wamp图标, 浏览PHP&gt; PHP扩展并单击第二项'php_curl'。 Wamp将自动重启。

答案 2 :(得分:4)

我遇到了同样的问题,我解决了它只是unistalling wamp2_x64(首先安装在c:\ wamp中)并在文件夹C:/ Program Files(x86)/ wamp中重新安装wamp_x86。

这似乎解决了这个问题,我想这可能是64位dll的问题。

答案 3 :(得分:4)

某个WAMP服务器包中的php_curl.dll是错误的文件,我遇到了同样的问题,我在/ wamp / bin / php / php中找到了正确的php_curl.dll文件[youversion / ext /并替换了它它起作用了。 请参阅此文章:http://forum.wampserver.com/read.php?2,85716

答案 4 :(得分:1)

与64位Windows 7有同样的问题。这对我有用。

Soren从另一个SO主题回答 - CURL for WAMP

“某处似乎有一个错误。如果您在Win 7 64位上遇到此问题,请尝试安装apache插件版本2.2.9和php插件版本5.3.1并切换到WAMP中的那些然后激活CURL扩展那对我有用。“

答案 5 :(得分:1)

我遇到了与Wampserver 2.2(64位)相同的问题。以下是我为实现目标所做的工作:

1)转到wampserver-&gt; PHP-&gt; PHP扩展,启用php_curl扩展

2)打开\ bin \ php \ php5.3.13 \ php.ini并取消注释以下行: 延长= php_curl.dll

3)转到\ bin \ php并将libeay32.dll和ssleay32.dll复制到windows \ system32文件夹中

4)如果您尝试重新启动wampserver的服务,您会注意到lib_curl仍然无效。事实证明,捆绑包中的php_curl.dll版本未正确编译。

Apache的错误日志包含以下内容:

警告:PHP启动:无法加载动态库

'c:/wamp/bin/php/php5.3.13/ext/php_curl.dll' - 应用程序无法启动,因为它的并排配置不正确。请参阅应用程序事件日志或使用命令行sxstrace.exe工具获取更多详细信息。

5)你需要一个正确编译的php_curl.dll版本。我从这篇博文中下载了php_curl-5.3.13-VC9-x64.zip:

[www.anindya.com]

直接链接:

[www.mediafire.com]

我用上面的那个替换了\ bin \ php \ php5.3.13 \ ext里面的php_curl.dll,一切都很好微笑笑脸 6)要测试cURL扩展是否适合您,请尝试使用此代码段

`

<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,
'http://news.google.com/news?hl=en&topic=t&output=rss');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$contents = curl_exec ($ch);
echo $contents;
curl_close ($ch);
?>

`

这是另一篇有相似信息的帖子(我在写完这些说明后发现了这一点): [www.o3n.org]

答案 6 :(得分:0)

如果你已经从php.ini中取消注释了行并且仍然得到错误 你应该确保这个扩展文件存在于php文件夹中

所以检查这个文件

  

php_curl.dll

in

  

{瓦帕} \ BIN \ PHP中\ php5.x.x \分机\

如果它不是从网上下载并将其粘贴到那里

重启Apache。

答案 7 :(得分:0)

  • 下载curl for windows(http://curl.haxx.se/download.html
  • 将zip文件内容粘贴到C:\ wamp \ bin \ apache \ apache2.2.x
  • 找到并打开您的php.ini文件(位于C:\ wamp \ bin \ php \ php5.x)
  • 在您的php.ini文件中,更改/取消注释以下行: ;extension=php_curl.dll(通过删除分号来实现)
  • 重启Apache或整个服务器以享受

答案 8 :(得分:-1)

这解决了我的问题

  1. 完全停止WAMP。
  2. 找到您的WAMP文件夹C:\Path\To\WAMP\bin\Apache\ApacheVersion\bin\
  3. 编辑php.ini并取消注释extension=php_curl.dll
  4. 重启WAMP。
  5. 应该有希望解决它。