如何在 CentOS 6.2 上安装 PHP mbstring

Posted

技术标签:

【中文标题】如何在 CentOS 6.2 上安装 PHP mbstring【英文标题】:How to install PHP mbstring on CentOS 6.2 【发布时间】:2012-05-03 22:44:29 【问题描述】:

如何在 CentOS 6.2 上使用 php 安装 mbstring

我试过了:

$ sudo yum install php-mbstring

Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
 * base: mirror.net.cen.ct.gov
 * extras: centos.aol.com
 * updates: mirrors.seas.harvard.edu
Setting up Install Process
No package php-mbstring available.
Error: Nothing to do

但是没有找到包?

【问题讨论】:

【参考方案1】:

yum install php-mbstring (根据http://php.net/manual/en/mbstring.installation.php)

我认为你必须安装 EPEL 存储库http://fedoraproject.org/wiki/EPEL

【讨论】:

感谢您的回答@Tor P,我如何添加 epel 存储库?我现在没有 我不会说英语,你能给我任何代码吗?我试试 我试试这个“sudo yum install php-mbstring”,我得到这个响应“没有可用的包 php-mbstring。” 我看到你的更新仓库映射到与我不同的镜像(我得到了 updates.intergenia.org),可能它没有包...我会检查是否有任何其他回购你可能会尝试... 要添加 EPEL,执行 'rpm -Uvh download.fedoraproject.org/pub/epel/6/i386/…' 然后你可以简单地执行 'yum install php-mbstring'【参考方案2】:

执行以下操作:

sudo nano /etc/yum.repos.d/CentOS-Base.repo

updates 部分下,注释掉mirrorlist 行(在行前放一个#),然后在新行上写:

baseurl=http://centos.intergenia.de/$releasever/updates/$basearch/

现在试试:

yum install php-mbstring

(之后您可能想要取消注释镜像列表并注释掉 baseurl)

【讨论】:

@ninjascorner 是的,请参阅下面有关添加 EPEL 并从那里安装的答案和评论。 没有包php-mbstring可用。【参考方案3】:

如果您有 cPanel 托管,您可以使用 Easy Apache 通过 shell 来执行此操作。这些是步骤。

    键入 Easy Apache 路径键入 Easy Apache 的路径

    root@vps#### [~]# /scripts/easyapache

    不要对“cPanel 更新可用”说是。 使用默认设置继续浏览屏幕,直到进入“详尽的选项列表”。 向下翻页,直到看到列出的 Mbstring 扩展名并选择它。 继续执行这些步骤并保存 Apache PHP 构建。

Apache 和 PHP 现在将重新构建以包含 mbstring 扩展。等待该过程完成约 10 到 30 分钟。完成该过程后,您现在应该会在 phpinfo 中看到 Mbstring 扩展名。

更多详细步骤见文章 Installing the mbstring extension with Easy Apache

【讨论】:

你给了我一个很好的提示。我使用基于 web 的 EasyApache。马上运行。投票表示感谢【参考方案4】:

由于yum install php-mbstring 然后httpd -k restart 没有为我做,我认为应该编译these options,正如here 所记录的那样:

现在,配置和构建 PHP。这是您自定义 PHP 的地方 各种选项,例如将启用哪些扩展。跑步 ./configure --help 获取可用选项列表。在我们的例子中 我们将使用 Apache 2 和 mysql 支持进行简单配置。

如果您从源代码构建 Apache,如上所述,以下示例 将匹配您的 apxs 路径,但如果您安装了 Apache 其他一些 方式,您需要相应地调整到 apxs 的路径。注意 一些发行版可能会将 apxs 重命名为 apxs2。

cd ../php-NN
./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql --enable-mbstring
make
make install

如果您决定在安装后更改配置选项, 您需要重新运行配置、制作和制作安装步骤。你 只需重启 apache 新模块即可生效。一种 不需要重新编译Apache。

请注意,除非另有说明,否则“make install”也会安装 PEAR,各种 PHP 工具,例如 phpize,安装 PHP CLI 等等。

虽然this page 说它是可选的:

--enable-mbstring 允许多字节字符串支持。这是可选的,因为如果不可用,将使用较慢的自定义代码。

【讨论】:

【参考方案5】:

*确保你先更新你的 linux 机器

yum update

如果有人仍然有这个问题,这是一个有效的解决方案:

centos-release : rpm -q centos-release

Centos 6.*

wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -ivh epel-release-6-8.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
rpm -Uvh remi-release-6*.rpm

Centos 5.*

wget http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/5/x86_64/epel-release-5-4.noarch.rpm
rpm -ivh epel-release-5-4.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
rpm -Uvh remi-release-5*.rpm

然后只需执行此操作即可更新

yum --enablerepo=remi upgrade php-mbstring

或者这个安装

yum --enablerepo=remi install php-mbstring

【讨论】:

嗨 andufo ,尝试了您的解决方案,但没有运气......我得到“没有可用的包 php-mbstring”。 (尝试使用root安装)...这是完整的错误消息pastebin.com/rqvS6QGx @andufo :当我尝试“# yum --enablerepo =remi install php-mbstring" 而且我在正确的 php.ini 中取消了对 mbstring.dll 扩展名的注释。我正在运行 Centos 6.8 PHP 5.6 Centos 7 怎么样?【参考方案6】:

如果上述方法都不能帮助您,并且您可以选择,请尝试获取其中一个 rpm 文件,例如:

wgethttp://rpms.famillecollet.com/enterprise/6/remi/x86_64/php-mbstring-5.4.45-2.el6.remi.x86_64.rpm

然后使用 rpm,安装它忽略依赖,像这样:

rpm -i --nodeps php-mbstring-5.4.45-2.el6.remi.x86_64.rpm

希望对您有所帮助。

【讨论】:

【参考方案7】:

请检查您的/etc/yum.conf 文件,可能是排除php 包。

您应该从该行中删除php*,以便您可以下载php-* 包:

exclude= courier* dovecot* exim* filesystem httpd* mod_ssl* mydns* php*

您的服务器似乎有一些像 cPanel 这样的脚本

【讨论】:

安装后无法在加载的模块中看到,请大家帮帮我【参考方案8】:
    找出php版本-php -v 搜索可用的 php 扩展 - yum search php- 安装使用 - yum install ea-php56-php-mbstring.x86_64 然后httpd -k restart

包名 - ea-php-php-mbstring.x86_64

【讨论】:

IMO 这是正确的答案。但是你可以不用php- 而不是yum search mbstring 并且不需要重新启动!刚刚测试过,效果很好。 @j_allen_morris 你的 php 版本是多少? 5.6 我使用了 hoogw 下面列出的方法。效果很好。【参考方案9】:

我以前遇到过同样的问题。就我而言,我需要在 GoDaddy VPS 服务器上安装 php-mbstring 扩展。以上解决方案都不适合我。

我发现使用 GoDaddy 的 WHM(Web Hosting Manager)安装 PHP 扩展。任何使用 GoDaddy VPS 服务器的人都可以通过以下地址访问此页面。

http://Your_Server_IP_Address:2087

在此页面上,您可以轻松找到可以帮助您安装/升级 php 组件和扩展的 Easy Apache 软件。您可以选择当前安装的配置文件并自定义然后配置配置文件。 Easy Apache 的一切都是解释性的。

我记得我为 HostGator 服务器做了非常相似的事情,但我不记得我实际上是如何更新配置文件的。

编辑: 当您拥有支持 Web Hosting Manager 的服务器后,您可以在 WHM 上添加/更新/删除 php 扩展。在 godaddy 服务器上,甚至建议在 WHM 上更新 PHP ini 设置。

【讨论】:

【参考方案10】:

以上都不适用于godaddy服务器centOS 6、apache 2.4、php 5.6

相反,你应该

使用 EasyApache 安装 mbstring PHP 扩展

检查你是否已经通过 putty 或 ssh 拥有它

php -m | grep mbstring

[如果没有,意味着缺少mbstring]

现在你需要去godaddy你的账户页面,

点击管理服务器,

打开whm -----搜索apache,

打开“easy apache 4”(我的案例)

现在你需要自定义当前安装的包,

通过

点击“当前安装的包...”旁边顶行的“自定义”按钮

搜索mbstring,

点击旁边的开/关切换。

点击下一步,下一步,.... privision..done.

现在你应该有 mbstring

通过 putty(ssh) 再次检查

php -m | grep mbstring [应该看到mbstring]

或者你可以在 phpinfo() 页面找到 mbstring

【讨论】:

我可以确认这是可行的。我刚刚使用它是因为我无法使用 Simple html DOM 1.5,但现在它可以完美运行了!!!太感谢了。我只能想象如果你没有发布你的答案,我会搜索多久。【参考方案11】:
sudo yum install php<version>w-mbstring

例如。 sudo yum install php56w-mbstring

【讨论】:

以上是关于如何在 CentOS 6.2 上安装 PHP mbstring的主要内容,如果未能解决你的问题,请参考以下文章

CentOS 6.6编译安装Nginx1.6.2+MySQL5.6.21+PHP5.6.3

如何在 centos 6.2 中安装 LAMP

CentOS 6.2编译安装Nginx1.2.0+MySQL5.5.25+PHP5.3.13

如何在 CENTOS 上安装 PHP clamav [关闭]

如何在 CentOS 上安装 PHP intl 扩展?

centos安装BT宝塔面板