Sakurairo主题(即本站使用的主题)是一款非常流行且美观的二次元主题,WP Rocket是Wordpress中著名的缓存插件之一,可以显著优化提升网站的加载速度。但是,在使用WP Rocket并开启各项优化之后,在开发者工具(F12)中发现一些特定的js文件出现了404(文件不可访问)的错误,对谷歌的网站评分产生了影响。

在仔细观察请求URL后可以发现,此时js文件的路径非常长,并不是位于Wordpress默认的主题安装文件夹中,而是位于“cache”文件夹下。“cache”是“缓存”的意思,由此推测WP Rocket在进行优化的时候,对js文件进行了重新编码、打包等操作,因此原始文件已经不再存在,而Sakurairo主题在运行的时候,请求的依然是原始的js文件,因此产生了404(文件不可访问)的错误。
为了彻底搞清楚,我在宝塔面板的文件管理下进一步验证。第一张图是主题原始文件夹(一张图根本截不完),第二张图是WP Rocket缓存文件夹。


在js文件夹中,可以很明显地看到WP Rocket对整个文件夹中的文件进行了重构,原来的一堆js文件都被整合在了一起,Sakurairo主题读取js文件时出现404(文件不可访问)的错误也就可以理解了。
解决这个问题的方法很简单,只需要进入WP Rocket插件的管理后台,在“文件优化”菜单中关闭对js文件的所有优化,让所有的js文件保持原始文件的样子和路径就可以了(如果还没配置WP Rocket的话这里干脆别开就好了)。保险起见,可以在WP Rocket插件和自己的浏览器中清理一下缓存,之后就可以重新打开页面观察是否还有报错。

Comments NOTHING