如何在 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 的路径
不要对“cPanel 更新可用”说是。 使用默认设置继续浏览屏幕,直到进入“详尽的选项列表”。 向下翻页,直到看到列出的 Mbstring 扩展名并选择它。 继续执行这些步骤并保存 Apache PHP 构建。root@vps#### [~]# /scripts/easyapache
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编译安装Nginx1.2.0+MySQL5.5.25+PHP5.3.13