如何在PHP 5.4.33 Apache服务器上启用mbstring?

时间:2015-09-29 00:28:50

标签: php apache joomla mbstring

我最近搬到了一个非托管的VPS,并将一个Joomla组件添加到客户端网站,并在尝试使用该组件的特定部分时收到以下错误。

致命错误:在第135行的/home/oursite/public_html/components/com_rsfiles/helpers/files.php中调用未定义的函数mb_strtolower()

我确定如果这是在共享计算机上,则不会抛出错误,因为他们会将服务器配置为接受它。但那不是我的情况。我必须配置它才能工作。

原始错误导致我确定我们的服务器上是否启用了mbstring,而不是。 enter image description here

所以我想知道如何启用它。用Google搜索它!发现它可能是php.ini文件的衍生物,所以我尝试使用这个php.ini定义启用它。 zend.multibyte = 1.添加行后,我重新启动了Apache Web服务器,但php信息页面仍显示已禁用。 : - (

进行上述修改后,我在收到同样的页面时收到了一个不同的错误,抛出了原始错误。这是新的错误:

致命错误:无法从检测到的编码转换脚本" UTF-8"第609行/home/psgadmincore/public_html/libraries/legacy/controller/legacy.php中的兼容编码

php.ini文件中还有8个其他mbstring项,但它们都被注释掉了。

;mbstring.language = Japanese
;mbstring.internal_encoding = EUC-JP
;mbstring.http_input = auto
;mbstring.http.output = SJIS
;mbstring.encoding_translation = On
;mbstring.detect_order = auto
;mbstring.substitute_character = none

; mbstring.func_overload = 0

我没有评论所有这些想法,他们也必须启用,但是"无法转换脚本"错误被返回。

有人可以指导我一个程序,该程序概述了包含"多字节字符串库"所需的步骤吗?

CENTOS 6.7 x86_64 virtuozzo w / Cpanel - php 5.4.33

这些网站没有帮助我: http://php.net/manual/en/ref.mbstring.php http://php.net/manual/en/ini.core.php#ini.zend.multibyte

谢谢

1 个答案:

答案 0 :(得分:1)

在@ceejayoz回复后我虽然我将php版本升级到5.6。我在WHM中使用EasyApache来执行下面的过程。在升级过程中,我能够在穷举选项列表中选择mbstring模块。

  1. 以' root'身份登录WHM。用户。在查找框中键入easy。点击
  2. EasyApache(Apache Update)。保留默认值,然后单击齿轮 图标(自定义配置文件)。
  3. 保留默认值,然后单击“下一步”。
  4. 单击“穷举选项列表”。 (这是我选择的地方 mbstring模块)
  5. 单击Apache或PHP模块的名称,然后单击“保存并生成”。