使用timthumb插件后与cdn缓存图片冲突的解决方法

品味人生 • 发布于 2019-02-01 21:37:02

这个家伙很害羞,不想介绍自己!

frontopen主题在v1.4.03.08版本后加入了timthumb缩略图剪裁插件。通过这个插件,用户在后台上传的各种图片都会按照预先在前端页面中设置的大小进行剪裁,大大降低了前端开发的难度。

不过部分用户在使用这个插件后遇到图片无法显示的问题。仔细询问后发现其实用了七牛云储存,将所有图片都存放到了xxx.qiniu.com的域名下。

由于timthumb默认设置中,出于安全考虑是不允许缓存外部地址图片的。因此我们打开timthumb缓存路径时会提示 “您可能无法从该网站获取的图像” 。

可是有些时候我们确实是需要从外部地址缩略图像,如果这样的话,就需要重新设置timthumb的安全策略,使其能够支持抓取外部的图片进行缓存。

具体操作方法为:

在timthumb.php中搜索  define ('ALLOW_ALL_EXTERNAL_SITES', false)

将其替换为:define ('ALLOW_ALL_EXTERNAL_SITES', TRUE)

上传后即可实现对站外链接的图片进行抓取缩略了。

frontopen主题的timthumb.php就在主题的跟目录下,请使用缓存服务的用户根据上面的提示进行修改吧。