我的网站在过去2个月内工作正常,但现在显示500 Server错误消息。然后我看到它说的error.log
文件
PHP致命错误:在第11行的public_html / catalog / model / tool / image.php中调用未定义的函数utf8_substr()
指定位置的代码是:
$new_image = 'cache/' . utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . '.' . $extension;
然后我认为可能是因为缓存然后我清除了缓存并仍然得到相同的错误消息。我在谷歌上寻找解决方案,我找到了一些解决方案,如Clearing cache
,检查startup.php
或utf8.php
是否缺失,但文件位于正确的位置。这是生产环境,网站从最近两天开始下降。
请告诉我这个问题的解决方案。
我正在运行Opencart版本2.0.3.1
提前致谢
答案 0 :(得分:3)
我找到了解决方案。我的网站缺少mbstring
扩展名。 yum install mbstring
无法在我的服务器上运行,因为它名为ea-php56-php-mbstring-5.6.26-1.1.2.cpanel.x86_64
。我安装了这个,我的网站再次运行。如果你也遇到同样的问题。然后请ssh进入您的站点并检查是否已安装mbstring,您可以通过运行php -m | grep mbstring
来检查它是否会返回任何内容如果未安装mbstring但是如果安装了扩展,那么它将返回mbstring。如果缺少mbstring
,则可以运行此命令yum search mbstring
它将使用mbstring
字词搜索扩展名。然后运行此命令yum install NAME_OF_FILE
。将NAME_OF_FILE替换为mbstring
文件的名称。然后按照说明进行安装。您可以通过运行mbstring
命令交叉检查是否安装了php -m | grep mbstring
。在我的案例中它非常有用。如果我没有正确解释,我很抱歉。谢谢tmquang6805
答案 1 :(得分:1)
请检查您是否已安装mbstring
或iconv
PHP扩展程序。因为这个函数只是在你安装其中一个时才加载。这是您的案例reindex
答案 2 :(得分:0)
安装php-mbstring,唯一的解决方案