我最近搬到了一个非托管的VPS,并将一个Joomla组件添加到客户端网站,并在尝试使用该组件的特定部分时收到以下错误。
致命错误:在第135行的/home/oursite/public_html/components/com_rsfiles/helpers/files.php中调用未定义的函数mb_strtolower()
我确定如果这是在共享计算机上,则不会抛出错误,因为他们会将服务器配置为接受它。但那不是我的情况。我必须配置它才能工作。
原始错误导致我确定我们的服务器上是否启用了mbstring,而不是。
所以我想知道如何启用它。用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
谢谢
答案 0 :(得分:1)
在@ceejayoz回复后我虽然我将php版本升级到5.6。我在WHM中使用EasyApache来执行下面的过程。在升级过程中,我能够在穷举选项列表中选择mbstring模块。