如何在你自己的虚拟伺服主机上优化你的 WordPress 网站?

随着海外虚拟伺服器主机(VPS)竞争的激烈,越来越多的普通人开始拥有它,即使很多人 Linux 一知半解,更不知道如何使用 command line(命令行)。如果你想在你的虚拟主机上安装 WordPress 网站,但愿你从我自己在前几周的失败经历中吸取教训,免得浪费时间。

因着网络服侍的缘故,我们从2000年开始为神道出版社的诸多网站提供自我管理服务。自从在我们的网络书店上增加了“支付宝”收款方式后,出现一个非常麻烦问题:客户付款之后,支付宝本来会自动将客户付款的信息即时返回到伺服器上。但不知为什么,国外的一些保守的伺服器中心,也许是为了某种安全考虑,防火墙自动拦截来自支付宝的任何访问。这样带来的不便就是,每次客户用支付宝付款后,要么我们及时手动登录支付宝国际网站,确认付款,然后手动放行收到的订单。但有时因不能及时做这样的手动操作,迫使客户主动与我们联络。

为了解决这个本来很简单的事情,我们请求我们原来的伺服器中心将 Alipay Global 的一些 IP 加到相关网站的白名单上,但加了之后也没有解决这个问题。而且,伺服器中心的人员直接告知:即使他们加了,也不能保证其它相关的网络提供商拦截支付宝的IP。

卖给我们支付宝插件的人建议我改用完全属于自己的虚拟伺服器。为了测试的缘故,我从VPS供应商 Ramnode 挑选了一个最小虚拟主机,内存只有 512 MB。测试的结果证实,支付宝网站付款成功的回执,不需要将它们的诸多IP加入白名单就可以自行通过。

至此,将我们的大多数网站(如果不是所有网站)转移到自己的虚拟主机的计划自然就形成了。

但是,因为我们诸多的网站都是使用 WordPress 作后台,512 MB 内存的主机根本就不够。而且,开始在服务器上安装的网站设置器 ISPconfig 同 cPanel 和 DirectAdmin 相似,虽然功能强大,但消耗主机资源太大。在 1GB 内存的主机测试结果是,仅仅八个 WordPress 动态网站和十个静态网站,就足以将 1GB 的内存和额外的 swap 暂存空间用光。一旦这个情况发生,伺服器自动关闭的是动态网站最急需的 MySQL 服务,有时一天就需要手动启动 MySQL 一次!

在试图解决这个棘手问题过程中,我们找到一家公司叫 ServerPilot,发现他们对此问题的解决办法很奇特。与 cPanel, ISPconfig, DirectAdmin 和很多其它伺服器管理系统不同的是,他们的管理软件不安装在自己的伺服器上,只是做对口连接。这样就解决了伺服器管理系统占用资源并可能随着伺服器的问题运作受牵连的问题。

让新手感到欣慰的是,ServerPilot 对伺服器的设置和对接简介方便,只需要输入三个关键数据,其它全自动,属于“一键安装”。用过ISPconfig 和其它伺服器网站管理系统的人都知道,安装伺服器网站管理系统步骤非常繁琐,普通人按照教程做,也基本无法成功。而且一个步骤搞不好,几个小时的工作就前功尽弃,需要重头来过。但 ServerPilot 的“一键安装”确保伺服器的安装针对 WordPress 做优化设置。在找到此“一键安装”系统之前,我也使用过 ISPconfig 的“一键安装”,但每次都不成功,被迫采取繁琐的手动安装。而且,最主要的问题是 ISPconfig 占用伺服器的资源太多。

而且,因为 ServerPilot 特别为运行 WordPress 网站设置,“一键安装” WordPress 也包含在其免费服务当中了——这是最好的!之前的 ISPconfig 系统,虽然也免费,但安装繁琐不说,要实现“一键安装” WordPress 还需要安装 Softaculous 并购买其付费证书才行。

ServerPilot 最大的好处是,大多数领先其它系统的服务全免费。而且设置后的人工支持服务也极其优良,这在免费的服务中很少见的。而且其网站上贴有大量短文和教程,解答你大多数的常见问题。

根据我的亲自个人体验,从你网站域名接通伺服器开始算起,大概只需要短短十分钟左右,你的第一个 WordPress 自域名网站就可以正是开通运行了。此过程包括 ServerPilot 的“一键安装”,将你的域名网站加入,以及“一键安装” WordPress 平台。这些全部可以在一个地方完成操作,简介方便。

你听说过最新版的 PHP 7.1 会减轻伺服器内存的负荷吗? ServerPilot 考虑过这个问题(点击这里查看有关 PHP 7.1 的详情)。实际上,网站设置好之后,你可以在 PHP的这些版本中任意改动设置:PHP 7.1, 7.0, 5.6, 5.5 和 5.4。

与 ISPconfig 另外一个不同是,你不需要一个网站设立一个 FTP 账户,就可以使用一个单一 FTP 账户来管理你在伺服器上的所有网站。当然,如果你是一个网站零售商,这一便利点反成为一个麻烦点,那你就需要他们的付费服务了。

: 这是我在 ServerPilot 后台所做的截屏,显示其中一个 Ramnode 4GB 内存的伺服器,在已经有了 20 个 WordPress 动态网站和 10 个小型 HTML 静态网站之后,运行7天的情形。你可以看到,虽然有这么多的动态网站在运行,但伺服器的负荷很低,内存稳定在四分之一的位置,CPU 在 2% 的平均值左右:

我又使用 app.loadimpact.com 做了两次模拟负载测试,看看其对伺服器有何影响。每次测试长达5分钟,每次测试发送多于4000次模拟访问,请看如此设立的伺服器对这两次测试的反应:

对上面的介绍有任何问题,请使用下面的评论区提出。谢谢!

Leave a Reply

发表评论

电子邮件地址不会被公开。 必填项已用*标注