donglan8256 2019-07-19 15:11
浏览 514
已采纳

Ubuntu上的PHP扩展目录

I've just installed the imagick PHP extension following this script: https://gist.github.com/rostockahoi/1d53a2efb8863d72d5f1acb94ae940d1

The install went fine. I found the imagick.so file in /usr/lib/php/20180731 directory. And my php.ini files (fpm and cli) have the extension=imagick.so at the end.

I've restarted PHP and nginx.

Though, PHP cannot find the extension. Look at this CLI test :

$ 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 is looking for extensions in this directory /usr/lib/php/20170718/

This dir exists but the imagick.so is not in it. On the other hand, as said before, there is also the directory /usr/lib/php/20180731/ with the imagick.so file in it.

I guess I have to tell PHP to look into the 20180731 dir instead of the 20170718.

How can I do that ?

Or should I copy manually the imagick.so file into 20170718 ? That does not seem optimal...

thanks !

  • 写回答

2条回答 默认 最新

  • douzhixun8393 2019-07-19 15:31
    关注

    Maybe you should try this php-config --extension-dir

    If php-config doesn't exist, then apt-get install php-config

    That command will give exact location of your php extension folder.

    Don't forget to change your php.ini in order to use extensions.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?