我的网站在过去2到3个月内都工作正常,但现在显示500服务器错误消息。然后我看到error.log
文件说
在给定位置的代码是:
$new_image = 'cache/' . utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . '.' . $extension;
然后我认为可能是因为缓存,然后我清除了缓存,仍然收到相同的错误消息。我在google上寻找解决方案,却发现
Clearing cache
之类的解决方案很少,请检查startup.php
或utf8.php
是否丢失,但文件是否位于正确的位置。它正在生产环境中,并且站点从最近两天开始已关闭。请告诉我这个问题的解决方案。
我正在运行Opencart版本2.0.3.1
提前致谢
最佳答案
我找到了解决方案。我的网站缺少mbstring
扩展名。 yum install mbstring
在我的服务器上不起作用,因为它名为ea-php56-php-mbstring-5.6.26-1.1.2.cpanel.x86_64
。我安装了它,我的网站又可以正常工作了。如果您也遇到同样的问题。然后,请ssh进入您的站点并检查是否已安装mbstring,可以通过运行php -m | grep mbstring
来检查如果未安装mbstring不会返回任何内容,但是如果安装了extension则它将返回mbstring。如果缺少mbstring
,则可以运行yum search mbstring
这个命令,它将使用mbstring
单词搜索扩展。然后运行此命令yum install NAME_OF_FILE
。将NAME_OF_FILE替换为mbstring
文件的名称。然后按照说明完成安装。您可以通过运行mbstring
命令来交叉检查是否安装了php -m | grep mbstring
。对我而言,这很有帮助。很抱歉,如果我没有正确解释。谢谢tmquang6805
关于php - 致命错误: Call to undefined function utf8_substr() Opencart,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39654438/