【问题标题】:How can I enable cURL for an installed Ubuntu LAMP stack?如何为已安装的 Ubuntu LAMP 堆栈启用 cURL?
【发布时间】:2024-01-23 06:42:01
【问题描述】:

我已经安装了 Ubuntu LAMP 堆栈。但是没有启用 cURL,我也找不到 INI 文件中列出的扩展名。我手动添加了它,但它也不起作用。

那我应该如何启用 cURL?

【问题讨论】:

标签: php ubuntu curl lamp


【解决方案1】:

来自Install Curl Extension for PHP in Ubuntu

sudo apt-get install php5-curl

安装 libcurl 后,您应该使用以下命令之一重新启动 Web 服务器,

sudo /etc/init.d/apache2 restart

sudo service apache2 restart

【讨论】:

  • @Arsheep “没用” 非常没有帮助。它给你一个错误吗?你的电脑爆炸了吗?你的房子着火了吗?
  • 没有错误也没有火焰人,它安装成功我重新启动了Apache并重试了curl代码但同样的错误再次“调用未定义的函数curl_init()”
  • sudo apt-get update -y && sudo apt-get install -y php5-curl
  • 你只需要安装 php5-curl... 其余的不需要在 PHP 中启用 curl。我也不必重新启动 Apache 以使更改生效。
  • 这个答案很旧,例如 ubunto 14.10 现在将 libcurl3 依赖项更改为 libcur4。这是我成功使用的(它还引入了更多依赖项,因为这是我第一次安装):sudo apt-get install curl libcurl4-openssl-dev php5-curl php5-cli
【解决方案2】:

你只需要安装 php5-curl 库。你可以通过运行来做到这一点

sudo apt-get install php5-curl

Click here 了解更多信息。

【讨论】:

  • @EdC 在我看来这是一个比接受的更好的答案,因为安装php5-curl就足够了,不需要其他的。
  • 这是更好的答案...更简单,无需重新启动网络服务器,因为 apt-get 会为您完成
  • 另外,你需要在这个命令之后使用sudo service apache2 restart重新启动Apache
  • @mblackwell8 我刚试过,你必须在使用命令后重新启动网络服务器才能工作。
  • 正确,需要重新启动 apache...仅供参考,您也可以输入:sudo /etc/init.d/apache2 restart(而不是 'sudo service apache2 restart)...虽然这种替代方法我提到要求您的目录保持不变,因为它指定了静态路径。我使用 Yazin 提到的那个
【解决方案3】:

试试:

sudo apt-get install php-curl

它在一个新的Ubuntu 16.04 (Xenial Xerus) LTS 上工作,带有 lamp-serverphp7。我尝试使用php7-curl - 它不起作用,也不适用于php5-curl

【讨论】:

  • 这对我来说非常好。我正在使用 PHP7,但我使用了没有版本号的命令,它工作得非常好。谢谢。
【解决方案4】:

对于那些试图在 PHP 7 上安装 php-curl 的人,它会导致错误。实际上如果你在 PHP 7 中安装 php-curl,包名应该是;

sudo apt-get install php-curl

不是php5-curlphp7-curl,只是php-curl

【讨论】:

    【解决方案5】:

    要做的第一件事:检查您的机器运行的 PHP 版本。

    命令行:php -version

    这将显示如下内容(在我的情况下):

    PHP 7.0.8-0ubuntu0.16.04.3 (cli) (NTS) 版权所有 (c) 1997-2016 PHP Group

    如果您使用的是 PHP 5.x.x => 运行命令:sudo apt-get install php5-curl

    如果 PHP 7.x.x => 运行命令(在我的情况下):sudo apt-get install php7.0-curl

    通过运行启用此扩展:

    sudo gedit /etc/php/7.0/cli/php.ini
    

    并在文件“php.ini”中搜索关键字“curl”以在下面找到这一行并将其更改为

    ;extension=php_curl.dll

    收件人:

    extension=php_curl.dll

    接下来,保存您的文件“php.ini”。

    最后,在您的命令行中,通过运行:sudo service apache2 restart 重新启动您的服务器。

    【讨论】:

      【解决方案6】:

      我尝试了大多数以前的答案,但它不适用于我的机器 Ubuntu 18.04(仿生海狸),但对我有用的是这个。

      首先:检查您的 PHP 版本

      $ php -version
      

      第二步:将您的 PHP 版本添加到命令中。我的是:

        $ sudo apt-get install php7.2-curl
      

      最后,重启 Apache 服务器:

      sudo service apache2 restart
      

      虽然大多数人声称不需要重启 Apache :)

      【讨论】:

      • 不需要指定php版本,使用:sudo apt-get install php-curlsudo service apache2 restart
      【解决方案7】:

      触发以下命令。它给出了一个模块列表。

       sudo apt-cache search php5-
      

      然后使用要安装的模块名称触发以下命令:

       sudo apt-get install name of the module
      

      有关参考,请参阅How To Install Linux, Apache, MySQL, PHP (LAMP) stack on Ubuntu

      【讨论】:

        【解决方案8】:

        您不必提供版本号。运行:

        sudo apt-get install php-curl
        

        它对我有用。不要忘记重启服务器:

        sudo service apache2 restart
        

        【讨论】:

          【解决方案9】:

          试试这个:

          sudo apt-get install -y curl
          

          【讨论】: