前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【玩转腾讯云】Hexo博客部署腾讯云

【玩转腾讯云】Hexo博客部署腾讯云

原创
作者头像
柠檬y
修改2020-04-26 14:19:28
82.1K1
修改2020-04-26 14:19:28
举报

简介

由于博客原来部署在Github上访问速度太慢,所以将原Hexo博客部署到腾讯云

部署环境

腾讯云服务器(CentOS 64位)

服务器配置

安装依赖包

代码语言:javascript
复制
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
yum install  gcc perl-ExtUtils-MakeMaker

卸载原来的git

原因:原来的git版本太低

代码语言:javascript
复制
yum remove git

下载并解压新版本的Git

代码语言:javascript
复制
cd /usr/local/src   // 选择文件保存位置
wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.18.4.tar.gz   // 下载链接
tar -zxvf git-2.18.4.tar.gz    // 解压

编译并安装

代码语言:javascript
复制
cd git-2.19.0                   // 进入文件夹
make prefix=/usr/local/git all  // 编译源码
make prefix=/usr/local/git install  // 安装至 /usr/local/git 路径

编辑环境配置文件

代码语言:javascript
复制
vim /etc/profile

在文件末尾添加如下内容

代码语言:javascript
复制
PATH=$PATH:/usr/local/git/bin   // git 的目录
export PATH

刷新环境变量

代码语言:javascript
复制
source /etc/profile

创建git用户并修改权限

代码语言:javascript
复制
adduser git
passwd git
chmod 740 /etc/sudoers
vim /etc/sudoers

找到一下内容

代码语言:javascript
复制
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL

在该语句下添加

代码语言:javascript
复制
git ALL=(ALL) ALL

退出(esc + :wq)并修改权限

代码语言:javascript
复制
chmod 400 /etc/sudoers

本地使用gitbash创建密钥

代码语言:javascript
复制
ssh-keygen -t rsa //因为我在GitHub上部署博客时已经创建过密钥,这里可以直接跳过生成,用以前的密钥

在腾讯云中创建ssh,并将本地的id_rsa.pub中的文件内容全部复制到authorized_keys中

代码语言:javascript
复制
su git
mkdir ~/.ssh
vim ~/.ssh/authorized_keys

修改权限

代码语言:javascript
复制
cd ~
chmod 600 .ssh/authorized_keys
chmod 700 .ssh

本地测试

代码语言:javascript
复制
ssh -v git@SERVER //@后是你自己的服务器公网IP,如果不出现failed字样,说明成功

云服务器中创建网站目录并设置权限

代码语言:javascript
复制
su root
mkdir /home/hexo
chown git:git -R /home/hexo

安装 Nginx

代码语言:javascript
复制
yum install -y nginx    // 安装
systemctl start nginx.service     // 启动服务

以上执行完之后,在浏览器中输入你的公网IP如果可以进入CentOs界面,说明Nginx安装成功

配置Nginx

代码语言:javascript
复制
nginx -t  // 命令查看位置,一般为 /etc/nginx/nginx.conf。
vim /etc/nginx/nginx.conf //修改配置文件,在server_name后添加自己的域名(要备案),root后添加/home/hexo

重启服务

代码语言:javascript
复制
systemctl restart nginx.service

建立git仓库并修改权限

代码语言:javascript
复制
su root
cd /home/git
git init --bare blog.git
chown git:git -R blog.git

同步网站根目录

代码语言:javascript
复制
vim blog.git/hooks/post-receive

填入如下内容

代码语言:javascript
复制
#!/bin/sh
git --work-tree=/home/hexo --git-dir=/home/git/blog.git checkout -f

修改权限

代码语言:javascript
复制
chmod +x /home/git/blog.git/hooks/post-receive

在本地Hexo目录下修改_config.yml文件中的deploy后的repo改为:

代码语言:javascript
复制
git@SERVER:/home/git/blog.git   //@后为你的服务器公网IP

以上全部完成后,执行hexo的部署命令即可完成在腾讯云服务器上的博客部署

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介
  • 部署环境
  • 服务器配置
    • 安装依赖包
      • 卸载原来的git
        • 下载并解压新版本的Git
          • 编译并安装
            • 编辑环境配置文件
              • 刷新环境变量
                • 创建git用户并修改权限
                  • 本地使用gitbash创建密钥
                    • 修改权限
                      • 本地测试
                        • 云服务器中创建网站目录并设置权限
                          • 安装 Nginx
                            • 配置Nginx
                              • 重启服务
                                • 建立git仓库并修改权限
                                  • 同步网站根目录
                                    • 修改权限
                                    相关产品与服务
                                    云服务器
                                    云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
                                    领券
                                    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档