0

我在 Wordpress 中遇到了W3 Total Cache插件的奇怪问题。

我正在使用 Wordpress 4.6.1 和该(审查)插件的 0.9.5.1 版本。我只是太晚才发现我的 WP 版本不兼容 - 它与 4.7 不兼容,并且我的版本也面临问题......

由于我们的客户收到了来自我们主机的关于“慢查询”的电子邮件,并且由于它已经有 W3 Total Cache 插件(可能与其他插件或主题一起安装),我们启用了“页面缓存”、“数据库缓存”和“浏览器缓存”。

所以问题开始了:几天后,我可以编辑一个页面,但又过了几天,页面编辑页面进入白屏死机/错误 503 -我不是唯一遇到这个问题的人!有趣的是,编辑帖子页面似乎表现正常。

在互联网搜索之后,我按照本教程摆脱了这个插件,因为它在网站的许多部分传播文件和代码。对很多人来说,它解决了这个问题——但对我来说不是!即使在那之后,页面编辑页面仍然是空白的,并且图像和js / css链接仍然被缓存,即使插件和缓存文件被删除,htaccess是正常的(只有wordpress代码在那里),并且有网站周围没有任何插件痕迹。例如,在图像中我仍然得到类似的东西(看缓存src):

<img class="alignnone size-full wp-image-4844" 
    src="wp-content/uploads/2016/09/xphoto.png.pagespeed.ic.m2asf09saf.png" alt="photo"
    srcset="http://www.example.com/wp-content/uploads/2016/09/photo.png 990w, http://www.example.com.br/wp-content/uploads/2016/09/photo-300x60.png 300w, http://www.example.com.br/wp-content/uploads/2016/09/photo-768x153.png 768w" 
    sizes="(max-width: 990px) 100vw, 990px" width="990" height="197"
>

另一个:

<img src="/wp-content/uploads/2016/09/xphoto2-400x400.jpg.pagespeed.ic.sj83Hr32Yh.webp" alt="" 
    data-pagespeed-url-hash="1923713827" 
    onload="pagespeed.CriticalImages.checkImageForCriticality(this);"   
    style="opacity: 1;"
>

我在我的 MySQL 数据库上进行了搜索,以找到“pagespeed”术语(因为插件将其添加到大多数图像和 css/js 链接中),但什么也没有……在文件夹中再次搜索,也没有。我联系了我的主机服务,他们也不知道发生了什么,因为代码现在没有插件,而且数据库中似乎也没有任何内容。清理浏览器缓存和 cookie 也无济于事。

据他们说,清漆已经关闭(我对清漆一无所知,但他们说这是一种缓存 php 文件的方法)。我想不出任何解释为什么它将这些不存在的代码放在站点中,除非有些东西缓存在服务器的 RAM 内存中。托管公司表示他们无法重新启动服务器,因为它是共享服务器(因此其他客户的其他站点在那里)......

所以,我的问题是,如果站点代码中不再有这个插件,它怎么还会影响站点?当然,如何解决这个问题?

编辑:我再次与我的托管公司交谈,他们说 mod_pagespeed 也关闭了。此外,他们说服务器缓存了 40 分钟,而不是像我的网站那样超过 24 小时。所以这可能是服务器的技术问题。

4

1 回答 1

0

好吧,最后我能够发现发生了什么并解决了它,所以我会发布它,希望这对有同样问题的人有所帮助。问题是 google mod_pagespeed - 调整我的代码以理论上提高我的网站速度的功能 - 实际上是打开的,因此托管公司得到了错误的信息。虽然缓存可能很有用,但我不仅没有看到速度提高,而且其他页面仍然受到此功能的影响,因此我在更新滑块和其他依赖图像的插件时遇到了问题。

解决方案很简单:只需转到主机的控制面板,找到 Google PageSpeed 选项(或类似选项)并禁用它

关于 Varnish:它没有导致这个问题,所以我能够保持它的工作(毕竟通过同一个控制面板禁用它仍然让网站显示带有 pagespeed 代码的图像)。所以你不需要禁用 Varnish。

于 2017-02-15T18:28:16.680 回答