【问题标题】:PHP extension dir on UbuntuUbuntu上的PHP扩展目录
【发布时间】:2023-03-26 16:59:01
【问题描述】:

我刚刚按照以下脚本安装了 imagick PHP 扩展:https://gist.github.com/rostockahoi/1d53a2efb8863d72d5f1acb94ae940d1

安装很顺利。我在 /usr/lib/php/20180731 目录中找到了 imagick.so 文件。而我的 php.ini 文件(fpm 和 cli)的末尾有 extension=imagick.so。

我已经重启了 PHP 和 nginx。

虽然,PHP 找不到扩展。看看这个 CLI 测试:

$ php -i  
$ PHP Warning:  PHP Startup: Unable to load dynamic library 'imagick.so' (tried: /usr/lib/php/20170718/imagick.so (/usr/lib/php/20170718/imagick.so: cannot open shared object file: No such file or directory), /usr/lib/php/20170718/imagick.so.so (/usr/lib/php/20170718/imagick.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0

PHP 正在此目录中寻找扩展 /usr/lib/php/20170718/

此目录存在,但 imagick.so 不在其中。 另一方面,如前所述,还有目录/usr/lib/php/20180731/,里面有imagick.so文件。

我想我必须告诉 PHP 查看 20180731 目录而不是 20170718。

我该怎么做?

或者我应该手动将 imagick.so 文件复制到 20170718 中吗?这似乎不是最佳选择...

谢谢!

【问题讨论】:

    标签: php ubuntu


    【解决方案1】:

    也许你应该试试这个php-config --extension-dir

    如果php-config不存在,则apt-get install php-config

    该命令将提供您的 php 扩展文件夹的确切位置。

    不要忘记更改您的 php.ini 以使用扩展程序。

    【讨论】:

      【解决方案2】:

      我终于用另一个命令安装了imagick,一切都很好。

      sudo apt-get install php-imagick

      imagick.so 已安装在所有/usr/lib/php/YYYYMMDD/ 目录中。

      简单多了!

      【讨论】:

        猜你喜欢
        • 2013-01-08
        • 2014-04-07
        • 1970-01-01
        • 2012-12-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-01-18
        相关资源
        最近更新 更多