美文网首页
Hexo部署到云服务器

Hexo部署到云服务器

作者: 梦里桃花舞倾城 | 来源:发表于2020-04-20 22:31 被阅读0次

博客的架构

Hexo部署流程
  • 首先本地hexo generate构建生成一个Public文件夹,Public里就是打包生成的静态HTML文件。
  • 通过hexo -d部署到我们自己服务器上的Git远程仓库
  • 最后服务器通过git-hooks同步到网站根目录

搭建流程

  1. 本地Hexo环境搭建,需要有node.js环境(这里不介绍本地环境搭建)
  2. 服务器环境搭建
  • Nginx配置(这里也不做介绍)
  • Git配置(主要介绍)

服务器Git配置

本地生成公钥私钥

终端执行ssh-keygen -t rsa命令;如果本地之前已经生成了那么可以拿来直接用;秘钥所在位置是~/.ssh,里面包含了id_rsaid_rsa.pub分别是私钥和公钥,id_rsa.pub是我们后面需要服务器需要用到的。

服务器Git安装

启动我们的服务器执行yum install git安装git,结束了我们可以通过git --version看下是否安装成功

yum install git

创建git用户

创建一个名为git的用户

adduser git
// 修改权限
chmod 740 /etc/sudoers
// 编辑
vim /etc/sudoers

找到如下内容

## Allow root to run any commands anywhere
root    ALL=(ALL)     ALL

在下面添加如下代码

git     ALL=(ALL)       ALL

保存退出后改回权限:

chmod 400 /etc/sudoers
编辑sudoers

git服务器打开RSA认证

vim /etc/ssh/sshd_config

sshd_config中设置以下几项:

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile  .ssh/authorized_keys

设置Git用户密码

sudo passwd git

配置ssh

切换git用户并且设置密钥

su git

cd ~

mkdir .ssh

cd .ssh

// ~/.ssh/id_rsa.pub  ,将公钥复制粘贴到authorized_keys

vi authorized_keys

chmod 600 ~/.ssh/authorized_keys

chmod 700 ~/.ssh

执行ssh 命令测试

执行ssh命令测试是否可以免密登录ssh -v git@SERVER

ssh -v git@服务器的公网ip

成功返回如下:

验证ssh

创建git仓库

cd ~
// 默认是创建在home/git/目录下
git init --bare blog.git

使用–bare参数,Git 就会创建一个裸仓库,裸仓库没有工作区,我们不会在裸仓库上进行操作,它只为共享而存在

设置钩子

git --work-tree=/home/www/website --git-dir=/home/git/blog.git checkout -f

  • /home/www/website是我们在服务器上创建的目录,用来存放Hexo构建之后生成的静态文件
  • /home/git/blog.git是服务器上的远程git仓库位置。

保存并退出:

chmod +x ~/blog.git/hooks/post-receive

以上指令都需要在su git 之后执行 如果中途断开重新连接过,需要重新执行 su git指令 进入git账户。

  • 新建/home/www/website文件夹,需要切换到root账户
su root

输入密码

cd /home

mkdir www

cd www

mkdir website

// 修改文件夹权限 
chmod 777 /home/www/website

chmod 777 /home/www

设置Nginx web配置文件

server {
    ......
    # 站点根目录
    root /data/www/website;
}

重启Nginx服务

nginx -s reload

到此服务器配置完成

修改本地hexo配置文件

修改hexo配置文件

到此:大功告成!可以在本地部署一下hexo看看能够更新成功

hexo clean
hexo g -d

参考链接

如何将博客部署到云服务器

通过Git将Hexo博客部署到服务器

Hexo部署在阿里云服务器上

相关文章

  • hexo部署到centos服务器上

    本文介绍将hexo部署到腾讯云的centos服务器上。 准备一台centos云服务器。 搭建本地hexo服务 搭建...

  • Hexo部署到云服务器

    本篇内容用来讲述如何将 hexo 博客部署到腾讯云的服务器上。只要通过三步即可成功部署:云服务器端 git 的配置...

  • hexo部署到私有云一键部署服务器

    # hexo部署到私有云一键部署服务器 > Blog服务到期,把Blog相关的都要迁移至新的服务器,然而比较尴尬的...

  • Hexo部署到云服务器

    博客的架构 首先本地hexo generate构建生成一个Public文件夹,Public里就是打包生成的静态HT...

  • Hexo博客部署到腾讯云服务器

    因为使用github仓库存放Hexo博客速度太慢,所以自己买了腾讯云的服务器,现在开始把博客部署到腾讯云,由于域名...

  • hexo搭建静态博客

    jenkins + 码云 + hexo + 服务器,练习jenkins自动化部署 一、 安装lamp集成环境 服务...

  • 云服务器nginx配置

    1、单网站部署到云服务器上单网站部署到云服务器上,可以不依赖Nginx,直接将代码文件传到云服务器上,连接云服务器...

  • 4.服务部署

    参见:hexo官方网站Hexo 提供了快速方便的一键部署功能,让您只需一条命令就能将网站部署到服务器上。 安装 h...

  • 简单几部,从零开始搭建自己的博客网站之部署示例

    部署示例 Hexo Hexo的服务器部署相对简单,由于其对服务器要求低的特性,在网络上薅免费羊毛也较容易,但对内容...

  • HEXO 部署到云服务器详细指南

    前段时间薅羊毛了腾讯云的羊毛,花了360软妹纸买了6年的云服务。。。打算把以前托管在github上的hexo部署到...

网友评论

      本文标题:Hexo部署到云服务器

      本文链接:https://www.haomeiwen.com/subject/acwsihtx.html