首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安装php扩展名ubuntu 16 php 7时缺少的ini文件

安装php扩展名ubuntu 16 php 7时缺少的ini文件
EN

Ask Ubuntu用户
提问于 2016-11-13 12:40:32
回答 1查看 7.6K关注 0票数 1

好吧,在安装php扩展方面,ubuntu16和php7有什么根本的改变吗?

我刚把一个服务器从ubuntu 14升级到16,服务器需要运行自己的云。我也不能从头开始重建它

apt-cache search php- | less

它按预期列出可用的扩展。这里有一个片段:

代码语言:javascript
复制
...
php-icinga - PHP library to communicate with and use Icinga
php-igbinary - igbinary PHP serializer
php-imagick - Provides a wrapper to the ImageMagick library
php-irods-prods - PHP client API for iRODS
php-jmespath - Declaratively specify how to extract elements from a JSON document
php-json-patch - Produce and apply json-patch objects
php-json-schema - implementation of JSON schema

于是我开始安装php ImageMagick:apt-get install php-imagick

安装的最后一行是WARNING: Module imagick ini file doesn't exist under /etc/php/7.0/mods-available

当然,在.../mods-available下没有ini文件用于imagik。

有谁知道这是什么原因?

我玩的不是php没有正确安装,就是系统不知何故安装了多个php版本,并且在某个地方发生了某种冲突。在usr/bin中我可以看到php@php7.0*

不过我完全被困住了。

EN

回答 1

Ask Ubuntu用户

发布于 2016-11-15 15:05:03

  1. 模块是.so文件。
  2. 他们生活在@ /usr/lib/php/<buildnumber>/<modulename>.so
  3. /etc/php/7.0/mods-available中的ini文件简单地映射到上面的.so文件之一,即它们包含一行真正重要的extension=<modulename>
  4. 运行phpenmod <modulename>只会在/etc/php/7.0/apache/conf.d & /etc/php/7.0/cli/conf.d文件夹中创建一个引用文件。

所以简而言之..。您需要确保.so文件的存在,mods中可用的ini文件的存在,并且在相关的地方引用它,例如apache、fpm或cli。

希望这能帮到和我一样的人。

正如其中一条注释中提到的,关于php和mysql.它按装载顺序排列。/etc/php/7.0/apache/conf.d中引用文件的字母顺序实际上是由php加载模块的顺序。如果遇到mysqli问题,请尝试确保mysqlnd模块在mysqli模块之前加载。这个帮我修好了东西。

票数 1
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/848910

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档