我的Linux centos中的extension = php_intl.dll不存在

时间:2019-04-18 19:11:14

标签: php linux nginx centos

我有问题,我只想取消注释php.ini文件中的extension = php_intl.dll 但是该扩展名不存在,我在Nginx配置中使用了Centos。

This is my screenshot

2 个答案:

答案 0 :(得分:0)

Linux服务器不使用.dll文件。您需要一个.so来代替。

要在CentOS上安装php_intl,应启用remi repo。打开终端并运行以下命令:

  

wget https://rhel7.iuscommunity.org/ius-release.rpm

     

sudo rpm -Uvh ius-release * .rpm

更新您的系统,然后安装php-intl:

  

sudo yum更新   sudo yum --enablerepo = remi安装php-intl

要永久启用remi repo,请打开终端并运行以下命令:

  

sudo nano /etc/yum.repos.d/remi.repo   设置为启用= 1。

答案 1 :(得分:0)

您是如何安装PHP的?

PHP 5.6.3的版本非常老,并且受大量安全问题的影响,最新版本是5.6.40,但几个月前已经达到其end of life

如果从源代码安装,则必须对其进行重建,php命令的位置通常会提供有用的信息(例如,在/ usr / local中安装时)

which php

或从源代码中删除此版本,然后切换到RPM提供的二进制文件。

如果是从第三方存储库安装的,则应在同一存储库中找到 intl 扩展名。

查看yum命令提供的信息

yum info php-cli

虽然我衷心建议升级到受支持的版本(7.1+),但如果您想保留5.6,则“ remi”是唯一仍提供此版本(安全性为backports)的存储库

要升级安装(至最新的5.6.40或任何其他版本7.0、7.1、7.2、7.3),只需遵循wizard instructions

使用RPM,您无需更改php.ini即可启用已安装的扩展程序,每个软件包都提供了自己的配置文件(例如:/etc/php.d/20-intl.ini),该文件 启用它。

使用适当的提供程序,对于任何所需的扩展名(例如xxx),简单

yum install php-xxx

将使用此扩展名安装软件包(软件包名称可能有所不同,因为某些软件包提供了各种扩展名。)