代码之家  ›  专栏  ›  技术社区  ›  Imnotapotato

在我的服务器上安装PHP7后,PHP模块不会加载

  •  6
  • Imnotapotato  · 技术社区  · 8 年前

    我在服务器上安装了PHP7(因此,我没有/etc/php5和/etc/pph/7.0)。当我运行web应用程序时,我看不到以前的任何CURL(或fork)。

    起初我收到了一条错误消息:

    消息:调用未定义的函数curl_init()

    在安装php7 curl之后,我启用了它-approved on info()函数和此测试代码:

    var_dump(_isCurl());
    function _isCurl(){
        return function_exists('curl_version');
    }
    

    返回TRUE。

    但当我的代码中有一个实际的CURL时,我会得到以下错误:

    PHP警告:PHP启动:无法加载动态库 '/usr/lib/php/20151012/php_curl。动态链接库'- /usr/lib/php/20151012/php_curl。dll:无法打开共享对象文件:否 第0行“未知”中的此类文件或目录

    在里面 /usr/lib/php/20151012/ 我只有 .so 没有意义的文件。(同样适用于 /usr/lib/php5/20131226 文件夹)。那么它想要得到什么,为什么要从那里得到?

    如何配置我的新php。ini文件以获取以前的模型设置?(如果可能,也使用启用的PCNTL_FORK)如何使用curl?到底发生了什么???

    2016年5月4日编辑:

    好的,我决定把它改成 curl.so 现在收到了这个消息 PHP Warning: Module 'curl' already loaded in Unknown on line 0 然后我禁用了它,不知何故,curl现在可以工作了(评论curl ;extension:curl.so ;extension:php_curl.dll . 我勒个去。

    4 回复  |  直到 5 年前
        1
  •  15
  •   Necoras Faunus    7 年前

    我确实有这个问题。

    我刚刚花了几个小时尝试修复一些东西,在匆忙中,我出于某种原因启用了这条线:

    extension:php_curl.dll
    

    显然,正如有人所说,这是有意义的,但在你这样做之后,错误消息就很奇怪了。跑步 apt-get dist-upgrade 没有解决问题。

    所以,在拔了一些头发,把这篇帖子重读了100遍之后, 我刚刚评论了一下

    ;extension:php_curl.dll
    

    是的,问题解决了。

    所以OP肯定做了我做的事…工作时喝啤酒

        2
  •  7
  •   Imnotapotato    8 年前

    跑步 apt-get dist-upgrade 修复了所有问题:)

        3
  •  3
  •   Remy Mellet    6 年前

    就我而言,要让卷发发挥作用:

    • sudo apt-get安装php-curl
    • 注释卷曲扩展名: ;extension=php_curl.dll 在php中。ini(例如/etc/php/7.1/cli/php.ini)
        4
  •  0
  •   mangrove    3 年前

    当同时安装两个版本的PHP时,设置可能会混淆,例如7.0和7.3。这可能是因为最近的dist升级。可能加载了模块的错误版本。在我的情况下,apt-purge php7.0和7.3的重新安装修复了我的问题,当然你可能不想对自己的系统如此严厉。。。