###Wordpress+Woocommerce网站优化境内用户访问境外服务器 ####网站背景介绍 — 最近在帮朋友做的一个购物网站,网站使用Wordpress+Woocommerce搭建,由于这个购物网站是出售新西兰本土的产品,所以域名在https://nz.godaddy.com/购买的.co.nz的域名,服务器是在Wopus购买的服务器。 这样选择原因有:

  • 使用新西兰的域名增加用户的信任度。
  • 使用香港的服务器,保证国内用户访问速度,以及免去备案的环节。
  • 我在新西兰这里访问速度,维护起来方便。
  • 已经使用Wopus的服务器好多年,值得信赖。

####国内用户访问速度慢

网站在本地调试好了以后,然后上传到服务器上面准备测试访问速度。我把网站地址发给几个国内的朋友测试。结果测试结果很让人大失所望。

城市 网速 打开时间
北京 50M 20S
上海 10M 40S
上海 20M 35S
安徽 10M 50S
山西 10M 100S

虽然只有几位朋友帮忙测试,但是这么长的响应时长我觉得在地球上任何一个人都无法忍受,后来经过Wopus客服人员的帮助以及自己的一番资料查找,最终问题终于一个一个被查出来。

####导致访问慢的一些原因

  • GoDaddy的DNS解析服务器在国内网络中不稳定
  • Wordpress主题使用Google Font
  • Wordpress中有插件使用了Google API
  • 网站上面产品图片很多,偶尔会产生加载慢的问题

####解决方案

###### GoDaddy的DNS解析服务器在国内网络中不稳定

将Godaddy购买的域名托给dnspod来管理,dnspod国内的服务器会把你的域名解析到指定的服务器上面,设置非常方便。 设置方法:

  1. 登陆NZ Godaddy,选择需要设置的域名,然后点击DNS Management
  2. 在Nameservers下面选择Choose your new nameserver type为Custom,然后面两个输入框中添入dnspod提供的Servers f1g1ns1.dnspod.net f1g1ns2.dnspod.net 点击Save按钮
  3. 登陆dnspod注册用户
  4. 进入dnspod的控制台里面添加域名,控制台会自动获取到输入域名的信息。
  5. 设置解析的服务器记录,然后保存

至此,域名解析设置就完成了,大概过一段时间之后就生效了。

Wordpress主题使用Google Font

由于我在themeforest购买的主题可以在里面直接设置关闭Google Font,我就直接在主题里面直接关闭了。但是Woocommerce里面也有使用Google Font,所以这里的解决方案有:

  1. 使用Remove Google Fonts References插件。这个插件会移除Google Font的所有引用。
  2. 使用Cache Google Font插件来直接将Google Font存到自己的服务器上,不需要从Google服务器上去获取
  3. 使用七牛云存储插件中的360公共库,但是我的测试结果显示这个360公共库并不能有很快的访问速度。但是,360公共库提供了Wordpress插件,我没有测试过。直接在百度里面搜索360公共库就可以找到他们的主页面,点击Google字体库就可以看到插件下域地址了。
Wordpress中有插件使用了Google API

禁用使用Google API的插件,之前使用了一个Google的reCAPTCHA插件,这个插件是防止机器人登陆的一个插件非常好用。但是,国内用户在登陆页面登陆会很缓慢的等待Google的响应,最终无奈地把它禁用了。最后,使用其它插件来代替。

网站上面产品图片很多,偶尔会产生加载慢的问题

这里使用了七牛云存储服务来优化国内用户图片访问,实现步骤:

  1. 登陆Wordpress后台,安装七牛云存储插件。
  2. 登陆七牛,注册一个用户,新建一个对象存储,最后会获取到一个测试域名,当然也可以绑定自己的域名。
  3. 使用同步工具将自己的图片资源批量同步到七牛。七牛提供了一个工具qrsbox可以批量同步文件夹。
  4. 登陆Wordpress后台,设置七牛云存储插件。

    • 七牛域名:此域名为你创建对象存储之后得到的测试域名,或者是自己设置过的域名
    • 七牛空间名:就是对象存储的名称
    • ACCESS KEY 和 SECRET KEY:从密钥管理页面获取
  5. 设置七牛云存储插件中的本地设置要同步的扩展名文件和目录,这里的目录要确保和七牛存储的目录一致,比如我有一张图片在wordpress中的目录是在wp-content下面,具体路径为:wp-content/uploads/2016/12/1.jpg,然后同步到七牛也要按照相应的目录来传。如果,目录路径不对,wordpress就无法从七牛的服务器上获取这张图片资源,最后导致无法显示。

总结

至此,使用上面的方法已经解决了我之前面临的问题。经过一系列的问题排查和解决之后,国内的朋友再帮忙测试,访问速度都在3秒左右,都可以很快的打开。最后,希望这篇小文可以对读到这里的朋友能有一丝帮助。



Published

11 December 2016