未捕获错误:在我已转移到新主机的网站上出现‘Redis’类错误

时间:2020-09-19 作者:AdamJones

我得到了一个需要安装在服务器上的站点。该网站是由其他人创建的,似乎安装了redis。

我收到的错误包括(出于隐私原因,错误消息中的路径被更改/截断):

致命错误:未捕获错误:在WP内容\\对象缓存中找不到类“Redis”。php:732堆栈跟踪:#0wp内容\\对象缓存。php(171):WP\\u Object\\u Cache->__construct()#1wp包含\\加载。php(638):wp\\u cache\\u init()#2 wp设置。php(131):wp\\u start\\u object\\u cache()#3 wp config。php(94):需要一次(“\\路径\\…”)\\4 wp加载。php(37):require\\u once(\'\\path\\gree…\')\\5 wp blog header。php(13):需要一次(“\\路径\\…”)\\6索引。php(17):在wp内容\\对象缓存中抛出require(“\\路径\\…”)#7{main}。php在线732

真正奇怪的是,他们没有给我WP代码库,只有带有主题、插件和上传的WP内容文件夹。

因此,整个wp代码库、wp配置等都是我刚刚从Wordpress的最新版本中获得的默认值。组织。

那么,如果wp配置是默认的,那么一些类似redis的系统如何发挥作用呢?我以前从未遇到过这个问题,在服务器之间传输了101个预构建WP站点。

为了澄清,我不想启用Redis,所以我需要停止WP认为它存在,因为它不会在新服务器上。有人能帮忙吗?

2 个回复
最合适的回答,由SO网友:fuxia 整理而成

文件wp-content/object-cache.phpdropins – 带有非插件自定义代码的PHP文件。当您使用persistent object cache plugin, 它将自动加载。

通常插件会创建该文件。但是如果您移动所有没有插件的文件,该文件中的代码将不再工作,您将收到错误消息。

因此,您要么删除文件,要么重新安装插件。在这种情况下Redis Object Cache 插件。

SO网友:Cyclonecode

您需要确保安装并启用了redis php扩展。您可以使用以下方法检查已安装模块的列表:

php -m | grep redis
确保已启用扩展:

sudo phpenmod redis
要安装redis扩展,请执行以下操作:

sudo apt-get install php-redis
根据php的配置和运行方式,您可能需要重新启动Web服务器和/或php fpm服务:

sudo service apache2 restart
sudo service php7.3-fpm restart
当然,为了与您的环境相匹配,您必须更改为上面的内容。

相关推荐

Local installation is broken

昨天我在这里问我如何将整个安装上传到服务器,我在本地将“localhost”改为“website.com”,然后我又将其改回“localhost”,但现在我尝试在本地看到一篇帖子,它会将我发送到xamp仪表板。我怎样才能修复它?