Hexo博客怎么部署到云服务器(阿里云、华为云、腾讯云)——通用保姆级教程(持续更新)

写在前面:

  • 你是不是好不容易一步一步的,按照教程,搭建了个人博客部署到了 GitHub,到最后却发现,访问速度极慢,有时候甚至直接断开链接?
  • 是不是图片加载不出来?搜了教程于是开始搞博客图床?到最后发现访问速度还是没有多少提升?
  • 看这篇文章,教你如何部署博客到你的云服务器,速度直接起飞,也可以点击访问我的博客,围观如何部署博客到 Gitee Pages 中。

见者有缘,缘来好运。诚邀各位围观我的博客【CS_GUIDER】:
我的云服务器到期了,所以这里放两个部署在码云和 GitHub 的链接:
https://wlei224.gitee.io (Gitee托管,速度极快)
https://wl2o2o.github.io(Github托管,点击有╰
°▽°
╯)
**

我的开源博客涵盖了持续更新的八股文、Java基础、JVM、MySQL、Linux、框架技术、算法以及其他领域的文章,如果你对此感兴趣,欢迎前来围观!!!


万事第一步:看官方文档

Hexo博客的官方文档

安装前提

安装 Hexo 相当简单,只需要先安装下列应用程序即可:

  • Node.js (Node.js 版本需不低于 10.13,建议使用 Node.js 12.0 及以上版本)
  • Git

如果您的电脑中已经安装上述必备程序,那么恭喜您!你可以直接前往 安装 Hexo 步骤。

Node.js 的安装

为了后续排错方便,我们使用 NVM 来进行 Node 的安装。

# 安装NVM
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/

# 激活配置
$ source ~/.bashrc

image-20230822013352104

Node.js 版本限制

如果你坚持使用旧的 Node.js,你可以考虑安装 Hexo 的过去版本。

请注意,我们不提供对过去版本 Hexo 的错误修复。

我们强烈建议永远安装 最新版本 的 Hexo,以及 推荐的 Node.js 版本

Hexo 版本最低版本 (Node.js 版本)最高版本 (Node.js 版本)
6.2+12.13.0latest
6.0+12.13.018.5.0
5.0+10.13.012.0.0
4.1 - 4.28.1010.0.0
4.08.68.10.0
3.3 - 3.96.98.0.0
3.2 - 3.30.12未知
3.0 - 3.10.10 或 iojs未知
0.0.1 - 2.80.10未知

Git 的安装

yum install git-core

image-20230822013716334

安装完毕!!!

开始搭建 Git 服务器:

  1. 添加一个 git 用户
# 添加git用户
$ adduser git 

# 改变sudoers文件的权限为文件所有者可写
$ chmod 740 /etc/sudoers
$ vim /etc/sudoers

# 添加一行内容,按esc,再按:wq退出编辑
将 git ALL=(ALL) ALL 添加到root ALL=(ALL) ALL下方

# 将sudoers文件的权限改回文件所有者可读
$ chmod 400 /etc/sudoers 

# 设置服务器的git密码,用于git连接。输入时看不到任何显示,输入完成回车即可
$ sudo passwd git 
  1. 给服务器和主机的 Git 配置 SSH 密钥
  • 如果你的本地电脑中已有ssh密钥则跳过这一步,直接到C:\Users\你的用户名\.ssh中找到id_rsa.pub通过宝塔面板或者FTP将id_rsa.pub上传到/home/git/.ssh

注意,如果你是云服务器的话这里一定要将密钥上传到 /home/git/.ssh 这个路径,不然是不生效的,为什么不生效,这里就相当于什么呢?!就是相当于你把你服务器中的密钥添加到了 git 中,其中 git 的路径为/home/git ,所以肯定要添加到这个地方。

如果你是在虚拟机中,那么.ssh是有一个默认路径的,一般为:/root/.ssh,直接把生成的公钥放到这个位置或者通过 ssh 上传即可。

究其原因,你在你的Windows电脑上,需要将一个项目或者文件上传到GitHub(或者Gitee),然后通过仓库的https链接很多时候会报网络超时的错误,相信很多时候大家都会遇到,于是,我们发现GitHub官方还给出了仓库的ssh链接:git@github.com:username/repositoryname,就是这个样子,然后要是用这个的话,你就需要在本地生成一个密钥对,生成方法和下面的方法一样,然后就可以在电脑的C:\Users\你的用户名\.ssh这个路径下看到已经生成的id_rsa(私钥)、id_ras.pub(公钥)。然后你需要将生成的公钥添加到GitHub的设置中,如图:

image-20230824204900135

同理以上操作就相当于 Linux 系统的操作,只是系统不同罢了,知识点 + 1.

  • 如果你本地电脑C:\Users\你的用户名\.ssh中没有生成过ssh密钥,可以按照如下步骤生成密钥:

    用户
    git config --global user.name "你要设置的git软件的用户名"
    git config --global user.email "你要设置的邮箱"
    
    ssh-keygen -t rsa -C "你刚刚设置的邮箱"
    

为什么要进行通过配置 ssh 密钥?

这样主机和服务器的 git 连接时无需密码即可,更加方便。

  1. 在服务器中新建仓库

    cd /home/git
    git init --bare hexoblog.git #在/home/git下初始化一个名为hexoblog的仓库
    
  2. 配置钩子实现自动部署

    找到/home/git/hexoblog.git/hooks下的post-receive文件,如果没有则新建一个该文件,将其内容改为

    #!/bin/sh
    git --work-tree=/home/www/xxx --git-dir=/home/git/hexoblog.git checkout -f
    

    以上内容是一条命令,前者/home/www/xxx为网页资源目录,后者/home/git/hexoblog.git为云git仓库。意为当主机将静态文件推给服务器的git仓库后,自动触发hooks文件下的脚本,服务器能够自动将文件部署到网页资源目录,也就是什么呢,相当于Windows系统中 GitHub 网站的 Action,或者也就是Git pages部署,只不过在 Linux 系统中,操作麻烦一点。

  3. 然后设置网页资源目录的 IO 权限,否则 git 没有权限修改网页资源目录的内容,无法实现自动部署!!!

sudo chmod +x /home/git/hexoblog.git/hooks/pre-receive #赋予其可执行权限
sudo chown -R git:git /home/git/ #仓库目录的所有者改为git
sudo chown -R git:git /home/www/ #站点文件夹所有者改为git

Hexo 脚手架安装

直接全局安装:

$ npm install -g hexo-cli

安装很慢的话,可以先设置npm的淘宝镜像:

$ npm config set registry https://registry.npm.taobao.org

官网也给出了进阶局部安装方法,如下:

进阶安装和使用

对于熟悉 npm 的进阶用户,可以仅局部安装 hexo 包。

$ npm install hexo

安装以后,可以使用以下两种方式执行 Hexo:

  1. npx hexo <command>

  2. Linux 用户可以将 Hexo 所在的目录下的 node_modules 添加到环境变量之中即可直接使用 hexo <command>

    echo 'PATH="$PATH:./node_modules/.bin"' >> ~/.profile
    

本地跑一个 hexo 博客 Demo

直接参考官方文档,初始化一个博客,已经有hexo博客的话就直接跳过。

在你的博客目录下面的.config.yml中添加远程git仓库的地址,也就是上面我们在服务器中新建的仓库地址,如图:

image-20230824210942989

然后就可以愉快的hexo deploy了。

推荐一起使用:hexo cl && hexo g && hexo d

怎么访问部署到云服务器的博客呢?

云服务器IP:+ 端口号进行访问

在宝塔面板添加站点

由于云服务器在域名没有备案的情况下不开放80端口,所以手动设置一个空闲的32端口用于访问网页。

img

将网站目录设置为如下(自定义即可)

img

这里使用的是宝塔面板,也可以使用nginx进行配置,参考文章:https://blog.csdn.net/weixin_56301399/article/details/129270887

全网最全 SEO 强化篇之怎么让百度、谷歌、必应各大搜索引擎收录自己的文章

  • 百度

    • 是需要域名备案的,前提是拥有一台云服务器,所以我先搁置,后续补充
  • 谷歌:Google Search Console

    • 如何进行验证?

    image-20230825013409616
    持续更新中!!!

  • 22
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CS_GUIDER

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值