# 前言

去年 618 我在西部数码一次性买了五年的云虚拟主机,当时好像才两三百块钱。云虚拟主机买来主要是用来挂备案的,想着小厂备案可能查得不严。刚开始还好,博客也部署在华为云服务器上,可能域名指向的是国内,也确实没查过备案。

今年 6 月份华为云到期了没续费,刚好我人也在国外,本着能省则省的原则,就把博客部署到 Netlify 了。结果还不到一个月,西数就发邮件来说检测到域名指向了其他 IP 地址。西数邮件

最后没办法,就只能把这个云虚机用起来,域名分开解析,国内解析到这台虚机,国外解析到 Netlify。

但是这样问题也来了,Netlify 还好说,只需要部署至 GITHUB 就好了;可是虚拟主机就不方便了,网上都是说安装 hexo-deployer-ftpsync 插件,但在部署的时候一直报错,上传不了,只能自己手动 FTP 上传了。

后来了解到有个东西叫做 FTP-Deploy-Action ,可以通过 GitHub Action 自动将博客部署到虚拟主机,简直不要太方便,甚至还可以通过 GitHub Action 同时部署到 Github Pages 和虚拟主机。

# 前提条件

# 一、需要使用虚拟主机部署 Hexo 博客
# 二、Hexo 博客能正常部署访问

如果还没有 Hexo 博客或者不会搭建 Hexo 博客的话,可以看看下面两篇文章:

1、Win10:Hexo+github 搭建个人博客

2、Ubuntu:Hexo+github 搭建个人博客

# 三、Hexo 博客可以通过 GitHub Action 部署到 Github Pages

如果还没有配置好 GitHub Action 的话,可以看看这篇文章 使用 Github Action 实现全自动部署

另外,在将本地文件备份至 Github 的过程中,可能会出现主题文件夹是空文件夹的情况,这样通过 GitHub Action 部署后博客打开会白屏没有任何样式。解决办法可以看看这里 Hexo 主题 themes - 文件夹无法提交到 GitHub 的解决方法

# 配置 GitHub Action

打开 Action 配置文件 (本地博客仓库目录/.github/workflows/(Action配置文件).yml) ,在后面添加

- name: Deploy Files on Ftp Server
  uses: SamKirkland/FTP-Deploy-Action@4.3.3
  with:
    server: (FTP服务器地址)
    username: (FTP用户名)
    password: (FTP密码)
    local-dir: ./public/
    server-dir: (FTP服务器文件目录)
    port: (FTP服务器端口,一般是21)

最后直接将博客源码提交到 github 上就行了。

总访问量:加载中...更新于

请我喝[茶]~( ̄▽ ̄)~*

Aicsuk 微信支付

微信支付

Aicsuk 支付宝

支付宝