Hexo博客如何使用ftp的方式部署网站

我们在使用Hexo博客程序制作博客网站的时候,最难的问题可能就是图片和附件的保存,虽然互联网上给出了很多的解决方案,例如使用腾讯或者阿里云的存储空间来存放图片附件。但腾讯或者阿里云的云存储是需要按照流量付费的,甚至上传流量都需要付费,虽然购买时价格低一些,但如果网站流量大或者遇到恶意刷流量的情况,估计小站长们承受不起。

于是便想到使用物美价廉的虚拟主机,用虚拟主机存放图片,一般感觉比图床要便利很多。而且Hexo是可以通过ftp的方式部署网站的,于是找了份便宜稳定的虚拟主机,看看这次能不能成功,如果成功了,就不用每天为存储附件和图片,以及网站服务器发愁了。先来看插件的安装:

1.插件安装说明:

这次使用的依然是良心插件hexo-deployer-ftpsync,大家需要提前安装按一下,运行下面的代码

1
npm install hexo-deployer-ftpsync --save

如果不能够运行,就使用

1
npm install hexo-deployer-ftpsync

安装之后就可以在网站的根目录里添加ftp的部署代码:

2.添加部署代码:

1
2
3
4
5
6
7
8
9
10
11
#### ftp deploy
deploy:
type: ftpsync
host: ftpserver # ftp服务器地址
user: ftpusername # ftp用户名
pass: xxxx # 你的ftp用户密码
remote: xxx # 你要上传到的地址,例如/wwwroot
port: 21 # ftp端口,不同的ftp可能会不一样
delete: true # 上传本地文件是否删除ftp中的所有文件
verbose: true # 是否打印调试信息
ignore_errors: false # 是否忽略错误

其中的相关设置,大家查看一下虚拟主机的控制面板,对应将代码填好,如果你的轻量云服务器或者VPS开通了ftp功能,也可以来部署Hexo博客发布。然后还需要将默认的部署代码删除掉,不然会报错

1
2
3
# Deployment
deploy:
type: # 设置发布类型,如git,rsync

显示如下代码

然后只需要运行Hexo的部署代码

1
hexo d

3.测试部署文件

发现通过ftp部署网站太慢,ftp会时不时休息一下,主要是主机商不支持ftp反复大量写入,建议朋友们,尽量不要采用ftp方式部署网站。上传完成之后,会给出一个提示:

而且测试时,莫名其妙的总是删除掉HTML格式的文档,例如

1
index.html
1
404.html

咨询空间商,说是触发了保护机制,更改之后就没有问题。事实上,从当前虚拟主机市场来看,性能和安全、成本等诸多问题很难平衡,也可以使用FlashFXP直接上传Public文件夹里面的内容到虚拟主机。