利用七牛云存储缓存Gravatar头像加速 WordPress

  • A+
所属分类:WordPress
摘要

最后就是体验博客载入速度了,如果你是七牛付费用户还可以给头像缓存的七牛空间开启融合 CDN ,这样头像调用会选择离你最近、速度最快的节点链接,这样就可以避免Gravatar被“墙”以来头像总是获取失败和载入龟速的尴尬了,也算是变相的给我们的 WordPress 提了速!话说也不知道啥时候 WordPress 才会考虑在国内架设服务器,但愿这个愿望可以实现。

推荐给大家的WordPress本地缓存神器WP-Rocket普遍都反应非常的好,请参考【推荐一个 WordPress 本地缓存的神器: WP-Rocket 插件】一文。明月是个强迫症重度患者,对于WordPress载入时间缓慢一直都受不了,这个 WP-Rocket总算是解决了WordPress后台载入龟速的“顽疾”,最后就是评论的Gravatar头像问题了,虽然鸟哥主题Begin支持切换Gravatar服务器,但是无论哪个服务器都没有稳定过,国内多说的稳定性还不如“墙外”的SSL服务器呢!

博客本身评论比较多,如果文章评论量超过30条后,就严重影响文章的载入时间了。所以给Gravatar头像加速成了必须要解决的问题了,今天明月就分享给大家一个“利用七牛云存储缓存Gravatar头像”的方案,目前明月的博客站都已经实现这样的加速了!具体大家可以浏览本博客体验效果!

利用七牛云存储缓存Gravatar头像加速 WordPress

原理其实很简单,就是借助七牛云的“对象存储”拉取Gravatar的SSL服务器(当然也可以使用多说服务器)上的头像图片转存到七牛空间来实现,如果再在“对象存储”空间上再开启七牛云的融合CDN的话那就超级完美了,当然不使用CDN单就七牛空间的速度也比原有的强出了很多。下面给大家具体的实现方法,整体下来最多20分钟就可以搞定了:

直达申请注册七牛云

首先,当然是注册个七牛云账号并通过实名认证了,然后登陆七牛云账号新建一个“对象存储”空间,空间名字可以任意英文组合即可,镜像源要设成https://secure.gravatar.com/以便拉取 Gravatar 官网的头像图片(当然你也可以设定成多说 Gravatar 头像服务器地址),如下图:
利用七牛云存储缓存Gravatar头像加速 WordPress

然后根据自己WordPress主题使用到的头像尺寸设定七牛云对象存储空间的“图片样式”,参照 Gravatar 官方头像不同 size 的图片,依次是?s=40、60、80、100、120(你可以审查元素看看):

利用七牛云存储缓存Gravatar头像加速 WordPress

就明月使用的 Begin 主题来说32、40、60、80、100尺寸是最合适的,所以分别创建“图片样式”如下图:

利用七牛云存储缓存Gravatar头像加速 WordPress

这是全部创建完成后的处理样式列表

利用七牛云存储缓存Gravatar头像加速 WordPress

每个图片处理样式就参照上图设定即可,样式名称即为尺寸数字即可

至此七牛云存储端设置全部完成,剩下的就是在 WordPress 所使用的主题下根目录下的function.php里添加如下代码替换 WordPress 默认评论头像地址:

  1. //缓存Gravatar 头像到七牛云存储,WordPress 4.0+ 适用
  2. function qiniu_avatar($avatar) {
  3.   $avatar = preg_replace('/.*\/avatar\/(.*)\?s=([\d]+)&.*.srcset=.*/','<img src="http://这里要替换成你的七牛空间域名/avatar/$1-$2" class="avatar avatar-$2" height="$2" width="$2">',$avatar);
  4.   return $avatar;
  5. }
  6. add_filter( 'get_avatar', 'qiniu_avatar', 10, 3 );

记得要把你自己的七牛空间域名或者绑定的自定义域名在代码里填上(代码内紫色字部分替换即可),然后保存,浏览一下评论页面后,对评论头像地址进行验证是不是已经替换为七牛云空间缓存的图片了。这时登录七牛云可以看到空间里面已经缓存了头像图片了,如下图:

利用七牛云存储缓存Gravatar头像加速 WordPress

最后就是体验博客载入速度了,如果你是七牛付费用户还可以给头像缓存的七牛空间开启融合 CDN ,这样头像调用会选择离你最近、速度最快的节点链接,这样就可以避免Gravatar被“墙”以来头像总是获取失败和载入龟速的尴尬了,也算是变相的给我们的 WordPress 提了速!话说也不知道啥时候 WordPress 才会考虑在国内架设服务器,但愿这个愿望可以实现。

2017.02.14更新

有站长说 Gravatar 头像缓存到七牛后会造成用户更换头像后不能同步更新的问题,这个同步更新估计是没戏了,但我们可以通过设定 Gravatar 头像的缓存有效期来避免出现这样的尴尬,只需设定缓存 Gravatar 头像的七牛空间的“文件客户端缓存 maxAge”就可以了,如下图:

利用七牛云存储缓存Gravatar头像加速 WordPress

文件客户端缓存 maxAge的值是以秒为单位的,为了方便大家根据不同情况设定不同的天数,下面直接给出不同天数对应的秒数,以方便大家填写:

  • 1天=86400秒
  • 3天=259200秒
  • 7天=604800秒
  • 10天=86400秒
  • 14天=1296000秒
  • 20天=1728000秒

为什么可以这样设定,这是因为前文讲到的缓存 Gravatar 头像的七牛存储空间镜像源是 Gravatar官方的https://secure.gravatar.com/服务器,七牛会重新拉取对应的头像图片的。

历史文章推荐:

  • 我的微信
  • 扫一扫加好友
  • weinxin
  • 站长QQ群
  • 群号:284775512
  • weinxin
明月登楼

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:32   其中:访客  16   博主  16

    • 请输入您的QQ号 1

      厉害呀~~ 博主的社会主义核心价值观好牛~~ :lol: :lol: :lol:

      • 美玉无瑕 4

        不错,用上了,效果很棒呀!
        原来还可以定时自动的更新头像呢!不错,赞一个!