繁体   English   中英

无法在Ubuntu Linux上安装libcurl PHP

[英]Can't Install libcurl PHP on Ubuntu Linux

我正在尝试使用新的facebook api,它需要libcurl PHP。 我用了

sudo apt-get install php5-curl
sudo apachectl -k restart

而且它没有用。 我收到相同的错误,并且phpinfo()页面未对libcurl进行任何说明。

这个问题的根源可能是我从源代码中构建了一些工具(apache2,php),但是后来我很无聊,因此用软件包管理器安装了很多扩展。 但是我并不是确切地去诊断故障点。

肯定可以使用curl的apt-get安装,可以在以下位置找到

/usr/lib/php5/20060613/curl.so

我认为我的很多困惑源于不知道哪些文件放在何处以及它们有什么用途。 任何帮助将不胜感激,如果我需要提供更多信息,请告诉我。

编辑:我得到的具体错误是:

Exception: Facebook needs the CURL PHP extension.

从线

if (!function_exists('curl_init')) {
  throw new Exception('Facebook needs the CURL PHP extension.');
}

Ubuntu的:9.10

PHP:5.2.13

加载的配置文件:/etc/php5/apache2/php.ini

回答问题

什么版本的Ubuntu?

什么版本的PHP?

Apache和PHP如何设置?

phpinfo()会解析哪些ini文件? (应该在顶部附近)

通常,将发行包的程序包管理器中的软件与您自己构建的东西混合并匹配是一个坏主意。 打包管理器不会对您自己构建的东西一无所知,因此可能会感到困惑。

不仅如此,谁能说软件包管理器中的内容甚至与您自己构建的内容二进制兼容? 如果您自己构建它,那么至少您会知道它们都是兼容的。

在我看来,您应该卸载扩展程序并自己构建它们。 如果您不能执行此操作,请回去并通过软件包管理器安装apache和朋友,但是我建议您耐心等待,选择前一种方法。

也许apt未能正确修改您的php.ini文件以加载curl扩展名?

检查您的php.ini,看看是否有像这样的行:

extension=curl.so

或者可能:

extension=/usr/lib/php5/20060613/curl.so

要检查是否已安装php-curl,请按照以下步骤操作:

  1. 在您的Web服务器中创建一个文件(在Ubuntu中,它将在/ var / www文件夹中),并将其命名为info.php
  2. 打开该文件并键入以下命令:

     <?php phpinfo(); ?> 
  3. 保存该文件

  4. 打开您喜欢的浏览器并打开该文件(例如: http://localhost/info.php
  5. 现在,您将看到有关PHP安装的信息
  6. 搜索Curl,如果找不到,则表示您的php没有安装curl。

要安装php-curl,请按照以下步骤操作:

  1. 打开终端并输入以下命令:

     sudo apt-get install curl libcurl3 libcurl3-dev php5-curl php5-mcrypt 
  2. 完成后,打开php.ini文件(我的文件位于/etc/php5/apache2/php.ini)并添加以下命令:extension = curl.so

  3. 保存文件并使用以下命令重新启动apache:

     /etc/init.d/apache2 restart 
  4. 再次检查PHP信息页面,您会发现已安装PHP-CURL
  5. 而已

来源: http//www.ivankristianto.com/os/ubuntu/howto-install-curl-in-php-apache/379/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM