今天wordpress在做了缓存后,其它都正常,但是缩略图片不显示了;请求的时候会报”400 bad request”错误,打开具体缩略图URL又会报如下错误:
A TimThumb error has occured
The following error(s) occured:
- You may not fetch images from that site. To enable this site in timthumb, you can either add it to $ALLOWED_SITES and set ALLOW_EXTERNAL=true. Or you can set ALLOW_ALL_EXTERNAL_SITES=true, depending on your security needs.
Query String : src=https://cunwei-1310175552.cos.ap-shanghai.myqcloud.com/wp-content/uploads/2022/04/c18739d066877c1b30cc3e2e9e8ec9ab.png&h=200&w=300&zc=1&a=t&q=100&s=1
TimThumb version : 2.8.14
解决这个问题时,先给大家补充一点小知识,先说说:
wordpress缩略图工作原理,如下:
如果相关的文章有设置特色图像,那么主题会自动获取该特色图像为缩略图。
如果没有特色图像但文章中有插入图片,那么主题会自动获取该文章中的第一张图片作为缩略图。
如果文章中既没有特色头像也没有插入图片,则会使用主题内置的默认图片随机显示。
如果你发现相关日志中的图片无法显示,请按照以下办法进行解决。
图像文章格式不显示图片以及音乐文章格式的专辑封面不显示……等等,也可以使用此方法解决。
解决办法:
1、检查wp-content下面是否有一个名为cache的文件夹。
如果没有,你也不用手动创建,你用了什么缓存插件,你重新去安装启动缓存插件即可!
如果没有权限创建,缓存插件会提示的,会教你如何创建?
2、说到底,就是cache(缓存)文件的权限不足,有的服务器设置775,有的却要设置成777,根据每个服务器的严格程序有关系。
相信大家都知道,一般的网站,它的权限是755。
由于cache文件是在wp-content下,甚至是有的插件缓存名不是cache,或许有的是pagecache、dbcache……!为了彻底解决这个问题,我建议大家直接把wp-content设置为777权限。因为有的时候你只给cache文件777,缩略图还是不会显示的。
命令:
cd /html
chmod -R 777 ./wp-content
最后再说一句:我用的是”W3 Total Cache”缓存插件。
如果你用了其它缓存插件出现这个问题,用此方法相信你也是可以解决的。
提醒:
因为wp-content是wordpress的核心文件,建议给权限755最好。
如果你的服务器能直接给cache(缓存)文件777权限,而wp-content还能保持755,这当然是最佳的做法。
如果不行就按博主方法,简单粗爆的快速解决问题。