我们都知道 Akeeba Backup 是 Joomla CMS 上最好用的网站备份、还原、迁移扩展——没有之一。Joomla之门从它的第一个版本开始就跟进汉化并一直更新,同时竭力向每一个 Joomla! 站长推荐使用 Akeeba 来备份网站文件及数据。Akeeba Backup 共有两个版本:Core 是免费版本,仅仅拥有最基础的全站备份功能;Pro 是收费版,允许定期自动备份、备份后自动上传至网盘等。本文主要介绍如何实现 Akeeba Backup Pro 的自动备份功能。

 

网站备份
网站备份

相信每一个站长都认可“网站需要经常备份”的理念。对于内容更新频繁的网站,例如带有论坛(论坛上发帖时间是不可控的,可能每小时都有),或者企业网站但频繁发布公告、新闻等,这样的网站最好每天都备份一次。那么问题来了:每天操作一次网站备份,难免有些枯燥,毕竟是重复简单的动作;另外,备份过程会增加服务器负担,最好在访客数量最少的时段备份网站,例如后半夜。但是后半夜谁愿意从被窝里爬起来操作网站备份?—— 这些痛点的解决办法其实很简单:定时自动备份。而 Akeeba Backup Pro 版本恰好提供了这个功能。

第一步:了解 Akeeba 自动备份的要求

进入 Joomla 网站后台 Akeeba 组件的“设置”页面,会看到一个按钮“预约自动备份”:

Akeeba Backup 后台的设置界面
Akeeba Backup 后台的设置界面

 

点击该按钮就会看到如下的操作说明: 

 

Aeeba Backup Pro 对自动备份的操作说明
Aeeba Backup Pro 对自动备份的操作说明

 

从截图上可以看到,我们需要在服务器(Linux 系统)上创建定时任务(cron job)来执行如下的指令:

 /path/to/php /home/joomlagate/web/gate.com/public_html/cli/akeeba-backup.php

同时可看到这样的提醒:

别忘了把 /path/to/php 代号替换为你主机上的 PHP CLI(命令行界面) 可执行程序的真实路径。

因此,这条命令的重点就是我们要找到服务器上 php 命令行可执行程序的真实路径。对于熟悉 Linux 操作系统的用户来说其实非常简单。

这里还需要对命令的后半部分解释一下:

/home/joomlagate/web/gate.com/public_html 这部分实际上是服务器用户 joomlagate 所管理的网站 gate.com 其网站根目录在服务器上的绝对路径。你记不住也没关系,因为 Akeeba Backup Pro 会自动探测到这部分路径,然后在后面附加上它的命令行备份工具  /cli/akeeba-backup.php 的路径,再完整的显示在这个界面上。因此,你直接复制下来就可以了。

第二步:在服务器上探测 php 路径

通过 SSH 客户端以 root 用户身份登录 Joomla 网站所在的 Linux 服务器(本文假定服务器是 Linux 系统,对于 Windows 操作系统本文不适用),在命令行提示符后面输入以下命令:

root@ubuntu:~# which php   

就这么一个简单的命令,马上可以得到 PHP 可执行程序的真实路径:/usr/bin/php

相关截图如下:

一条命令探测到 PHP 可执行程序的绝对路径
一条命令探测到 PHP 可执行程序的绝对路径

 

第三步:在 VestaCP 中创建定时任务

通过浏览器登录你的 VestaCP 管理面板(本文假定你的 web 环境由 VestaCP 搭建,如果采用其他 web 环境方案,本文不适用),可以看到顶部菜单上有一个“定时任务”:

 

VestaCP 管理界面
VestaCP 管理界面

 

点击该菜单,可看到当前已存在的所有定时任务的列表(示例中还没有任何定时任务,因此列表为空):

 

VestaCP 管理界面中的定时任务列表
VestaCP 管理界面中的定时任务列表

 

点击列表左上角的“添加定时任务”(绿色十字)按钮,即进入定时任务创建界面:

 

在 VestaCP 管理界面创建新的定时任务
在 VestaCP 管理界面创建新的定时任务

 

在“指令”一栏,填写我们的备份命令(别忘了使用前面探测到的真实 PHP 路径)。然后就是设置“在何时执行”,VestaCP 非常人性化,在右下方显示了时间设置面板。假设我们每天备份一次,那么就点击“按天”,然后把“小时”数设置成 4 (表示凌晨4点),分钟数设置成“00”(表示4点整),接下来点击“生成”按钮,就会看到左侧的时间各栏已自动填写了我们刚刚挑选的时间点。现在点击“添加”按钮,就完成了定时任务的创建。页面上会返回一条“添加成功”的通知消息。

现在再次点击顶部菜单的“定时任务”,可以看到任务列表上有了一条新记录:

 

VestaCP 管理界面:定时任务已添加成功
VestaCP 管理界面:定时任务已添加成功

 

 

接下来,管理员就可以放心去忙别的工作了。晚上安心睡一觉,第二天上班打开 Joomla 网站后台,查看 Akeeba Backup 的“管理备份文件”界面,发现昨夜4点左右系统已经自动备份了:

 

Akeeba Backup 备份文件管理:自动备份已执行
Akeeba Backup 备份文件管理:自动备份已执行

 

可以看到,凡是通过 cron job 自动生成的备份包,其任务标题都是“Command-line backup”(命令行备份)。所以通过这个标志也能辨识出来该次备份是由定时任务自动完成的。

从此以后,站长再也无需惦记去备份网站了,定时任务会每天在你指定的时段自动执行备份操作,一次都不会忘记 —— 比人脑记忆可靠得多!站长唯一要做的,就是挑选一些重要日期的备份(例如每月1号的,或者网站发生重大变动后的备份包)结果,下载到更安全的地方保存,例如自己的 PC,或者直接上传到第三方网盘(这个主意不错,都不用担心个人 PC 丢了会把网站备份包也搞丢)。

从上述介绍也可以看到,采用 VestaCP 这个开源、免费的 web 集成包搭建的 LNAMP 服务器环境其图形化管理界面非常好用,Joomla之门再次呼吁各位站长不要再买坑人的“虚拟主机”(很多虚拟主机根本不提供“定时任务”权限),应该购买“云主机”(例如:景安快云VPS),然后自己用 VestaCP 搭建服务器,就可以得到完美支持 Joomla 的超强 web 环境!

  1. 评论 (0)

  2. Add Yours

评论 (0)

这里还没有人发表评论

免费下载最新Joomla!核心中文版

扫描此二维码,立即开始下载 Joomla 3 核心中文版

付费下载汉化版扩展

付费后即可下载独家海量

Joomla! CMS 扩展汉化版

了解付费会员制度

点击这里给我发消息

了解 joomlagate.com 网站的付费会员制度