WordPress 中使用 七牛云存储 加速图片等静态文件访问速度

WordPress 中使用 七牛云存储 加速图片等静态文件访问速度

最近将Jeff的两个网站(Jeff的阳台、DeveWork.com)的图片与主题的css、js都托管到七牛云存储上了。因此,你现在访问这两个站点,访问速度都是非常乐观的;如果不乐观,应该是你的网速问题了。接下来就介绍一下七牛云存储 以及如何将它与WordPress 无缝结合,实现的目的是:WordPress 站点上所有的图片以及CSS、JS等静态文件都采用七牛云存储的CDN 加速。

关于七牛云存储

有关七牛云存储的介绍请往 Jeff的阳台的《使用 七牛云存储 给力CDN加速图片等静态文件(附相关教程)》一文中了解。

在这里给出七牛云存储注册链接:点击进入  或推荐码: 2b644slk8cv9t ;通过这个链接或使用该推荐码注册,对你我都有好处,谢谢你的支持。目前注册可永久获得免费额度:每月10GB流量+总空间10GB+PUT/DELETE 10万次请求+GET 100万次请求(应付一个小网站绰绰有余)。

接下来就分别介绍“WordPress 站点的图片使用七牛云存储加速的方法”与“WordPress主题的CSS、JS文件使用七牛云存储加速”的方法。

WordPress 站点的图片使用七牛云存储进行CDN 加速的方法

首先说明,该方法的前提是你的文章中的图片都是放在一个二级域名里面的(二级域名做WordPress图片存储路径),而不是直接上传到wp-upload 文件夹的;请事先通过《图床么?不如用二级域名做WordPress图片存储路径》进行设置。

在这个基础上,如果要加速你的图片,那么可以使用七牛云存储的 “镜像存储(源站加速)”功能。这个其实是传统的CDN 加速,不过七牛目前由于前台的设置上不太完善,因此整个过程还是需要讲解讲解。

Jeff 以DeveWork.com为例子,为各位演示一下过程:

首先登陆七牛后台,比如说我的图片都是放在一个二级域名 1.devework.com ,现在我想镜像 1.devework.com 的内容,那么我需要在七牛后台新建一个空间,命名为devework。

七牛-新建空间

然后选择该空间进入,点击选择“空间设置”,再选择“镜像存储”,输入要加速的源站域名,如我的是 1.devework.com。

七牛 源站加速

在你建立了一个空间后,你就有了个七牛给的二级域名 devework.qiniudn.com ,对于域名,你可以使用自定义域名绑定(不过根域名一定要已经备案,申请绑定后需要发送相关备案资料给客服审核,时间大概是三个工作日)。如图,我绑定了域名 2.devework.com

七牛-绑定域名

自定义域名审核通过了之后需要在DNS那里进行CNAME解析,如我在DNSpod 那里将此解析到七牛给的二级域名 devework.qiniudn.com 。

域名绑定

关于为什么不能绑定为源域名的问题:
如果你使用过CDN服务的话,你就知道我加速哪个源站域名,就直接以源站域名来解析,最后访问文件还是在源域名。但是在七牛这里就非常奇怪,无论怎样,你都不能通过访问源域名去访问源文件,而要另外的域名(七牛的二级域名或者自定义域名)。这点我也问过客服,他说其实也可以实现传统CDN 的效果,但是比较麻烦。

最后,你需要修改源文件的url为那个七牛的二级域或者自定义域名,如果你使用的是 WordPress,那么就直接在PHPMyadmin后台通过MySQL命令批量修改了。

比如我需要将1.devework.com 批量替换为 2.devework.com,那么只需要在PHPMyadmin后台,点击SQL,输入以下指令按执行即可:

update wp_posts set post_content=replace(post_content,'1.devework.com','2.devework.com')

WordPress数据库里面几个重点替换的表和字段:
表wp_posts里面的post_content (文章内容)
表wp_posts里面的pinged (ping内容)
表wp_posts里面的guid (WordPress默认链接结构)
表wp_comments里面的comment_author_url (留言作者URL地址 )

WordPress主题的CSS、JS文件使用七牛云存储进行CDN 加速的方法

将WordPress主题的CSS、JS文件使用七牛云存储进行CDN 加速固然可以直接修改源代码为相应的url,但是这个又费力又费时,以后要改回来又麻烦。因此在这里推荐我爱水煮鱼的一个七牛镜像存储 WordPress 插件。【点击查看

下载安装后,在 WordPress 后台 > 设置 > 七牛镜像存储 输入你前面绑定的域名,勾选“将主题中的 JS,CSS 和背景图片也缓存到七牛”:

七牛-WordPress插件

之后,主题所有的CSS、JS文件都会托管到七牛的服务器上,包括CSS文件中的图片。

不过经过 Jeff的亲自使用,发现这个插件有一点点问题。虽然我不懂php,但这个插件的css、js文件替换为七牛的功能貌似是将所指代的url换成七牛的,如此一来只要WordPress 主题中地址包含有这个函数的的文件(包括php文件)表示都会被替换,因此像timthumb.php失效了,除非改成静态的相对路径。不得不说,这是一个bug。

所以,如果启用后发现主题一些功能不正常,可能就是这个原因。

写在最后

当然,七牛云存储的功能远远大于Jeff 在上面所说的,七牛云存储面对的其实是企业市场,服务的对象更多是互联网开发者。上面介绍的其实是很基础的一些用法,七牛云存储的高级功能远远高于如此,诸如图片、音频/视频/流媒体处理、qboxrsctl等等才是他们的核心竞争力;也因此在这一点上,七牛云存储比又拍云存储貌似更给力一点,价格上貌似也更便宜。更多只有你使用过才知道了(比如说,七牛中文件的上传是没有新建文件夹的概念的)。

 

评分:
当前平均分 1.52 (33%) - 109 个投票
云左主机 广告
26 条 评论
  1. 外贸网站如果使用这个 能提速么?

    2年前 回复
  2. 网站必须备案?

    3年前 回复
    • 必须备案才能自定义域名,否则是七牛的二级域名

      3年前 回复
  3. 七牛的加速真的有用吗?为什么有时加了反而连评论框都看不到

    3年前 回复
  4. 有个问题,域名绑定的时候可不可以用镜像源那个?就是不用2.devework.com,还是用1.devework.com。如果可以,是不是就不需要修改图片在数据库的链接了?

    4年前 回复
    • 可以啊,不过你要将图片上传咯

      4年前 回复
      • 图片就在子域名里面啊,貌似域名备案了还不行啊

        4年前 回复
  5. W3 Total Cache 应该如何设置七牛呢

    4年前 回复
    • 不好意思,请自己去找答案

      4年前 回复
  6. jeff,请教你一个问题,用七牛云存储绑定网站二级域名一定要备案吗?

    4年前 回复
    • 恩,一定的。所以没有备案的只能用七牛的二级域名

      4年前 回复
      • 难怪我用二级域名解析七牛的二级域名不行。

        4年前 回复
  7. 使用这个插件,分享之后的图片地址,还是源地址啊。在本站的话却还是七牛的地址。
    有没有办法让分享之后的图片地址也变成是七牛的地址呢?

    4年前 回复
  8. 相当不错啊。。
    不过要怎么robots呢?

    4年前 回复
    • 手动更新个不允许蜘蛛访问的robots.txt 就行了

      4年前 回复
  9. 还是很不错额哟。。

    4年前 回复
  10. 想问下博主,您这个博客是bae上的么?
    如果是的话 七牛的插件能运行?
    不是的话是怎么做的。

    4年前 回复
    • 不是,是自己购买虚拟空间的。七牛的插件如果运行有问题,那就只能修改源代码了。

      4年前 回复
    • 即使是运行在BAE 上也应该没问题啊,出问题可能是与主题相关代码起冲突了。

      4年前 回复
      • 我开启了缓存后会有些图片在i.wp.com/www.xx.com/xxxx.jpg这样的地址。但是这里没有图片。什么原因

        4年前 回复
        • 是不是 Gravatar头像 的问题?如果你留下你的网站,我可以帮你找一下原因。

          4年前 回复
  11. 启用后主题果然不正常了 呜呜

    4年前 回复
发表评论