Z次元
文章 笔记 日志
专题
专栏分类 文章归档
友链
友情链接 朋友圈
交流
留言 关于我
头像
系列文章
-
-
-
-
将Hexo部署到腾讯云轻量应用服务器
系列文章
网站搭建
最后更新:2024/12/15|创建时间:2020/12/28

这篇文章主要描述了如何在腾讯云轻量应用服务器上搭建Hexo博客的全过程,包括修改服务器初始密码、开放端口、配置SSH密钥和Git、安装宝塔面板、配置Git仓库、添加站点、以及本地配置等步骤。

前言

hexo的搭建

修改初始密码

进入腾讯云,点击右上角控制台,选择轻量应用服务器(如果没有的话,就直接使用上面的搜索功能)
找到自己的服务器,点击 更多→管理,然后选择重置密码,重置初始密码
图片
图片

图一

(图一)

图片

开放端口

点击 更多→管理→防火墙→添加规则,开放8888端口
为之后添加宝塔面板做准备

图片

配置SSH

配置SSH密钥,实现免密登录(首次提交时仍需要验证密码),如之前配过可跳过此步。

$ ssh-keygen -t rsa -C "邮箱地址"

连续敲回车确定,然后看到提示秘钥以保存在xxx路径下(如果没有出现提示就多敲几次回车)。
在提示的路径下找到id_rsa文件,复制文件内容,下面配置Git时会用到

图片

配置Git

如果没有特别说明,安装过程中如有出现选择,一律选择yes(y),(即输入yes(y)然后点击回车)

准备工作

点击登录(见图一)

在弹出的面板中输入以下代码,切换到root用户

# sudo su root

图片

安装Git

# yum install git

图片

配置Git

创建git账户,并修改权限

# adduser git

# chmod 740 /etc/sudoers

修改配置

# vim /etc/sudoers

点击键盘“i”建进入编辑模式,然后通过方向键编辑
找到root ALL=(ALL) ALL在其下方以相同格式添加git ALL=(ALL) ALL

root    ALL=(ALL)       ALL
git     ALL=(ALL)       ALL

图片

点击Esc后输入:wq,保存退出

改回权限

# chmod 400 /etc/sudoers

设置git密码

# sudo passwd git

密码输入过程中不会显示,输完后直接回车即可,输入两次(密码需要包含大写加小写字母加数字)

配置SSH

切换为git用户,配置SSH

# su git

$ mkdir ~/.ssh

$ vim ~/.ssh/authorized_keys

点击键盘“i”建进入编辑模式,然后通过方向键编辑

将本地生成的id_rsa.pub文件公钥复制进去(需要注意的是,如果之前配置过SSH,建议将同路径下的known_hosts文件删除,否则可能会报错,报错解决方法看后记),
点击Esc后输入:wq保存退出
赋予权限:

$ chmod 600 /home/git/.ssh/authorized_keys
$ chmod 700 /home/git/.ssh

本地使用Git测试是否配置成功,桌面右键“Git Bash Here”

$ ssh -v git@服务器ip

服务器ip为你的服务器公网ip,详见图一中的(公)后面的一串ip地址,即为服务器的公网ip

执行过程中出现选择,一律选择yes

如果执行过程中不需要输入密码且无报错,即为配置成功

图片

Git仓库配置

使用root用户

$ sudo su root

为hexo博客创建一个目录,赋予所有权限并设置所有者为git

# mkdir /home/hexo

# chown -R git:git /home/hexo

# chmod -R 755 /home/hexo

创建git仓库

# mkdir /home/repo

# cd /home/repo

# git init --bare hexo.git

创建Git钩子

# vim /home/repo/hexo.git/hooks/post-receive

点击键盘“i”建进入编辑模式,然后通过方向键编辑,将以下代码复制进去

#!/bin/bash
git --work-tree=/home/hexo --git-dir=/home/repo/hexo.git checkout -f

点击Esc后输入:wq保存退出
修改权限

# chown -R git:git /home/repo/hexo.git/hooks/post-receive

# chmod +x /home/repo/hexo.git/hooks/post-receive

修改git仓库的所有者为git:

# chown -R git:git /home/repo

安装宝塔面板

# yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

安装过程中出现选择一律输入y(yes)
图片

安装完成后根据给出的地址(外网ip)及账号密码,登录宝塔
图片

如果忘记宝塔账号密码可以输入以下指令查看账号密码(需要在root用户下)

# cd /www/server/panel && python tools.py panel testnamewd

# cd /www/server/panel && python tools.py panel testpasswd

或者直接进入宝塔目录,选择操作指令

# cd /www/server/panel

# bt

图片

进入宝塔面板后,按照提示安装Nginx

图片

添加站点

宝塔面板点击网站,选择添加站点,输入域名,根目录设为/home/hexo,php版本选择纯静态,
图片

最后,别忘了将服务器解析到域名

本地配置

修改Hexo配置文件中的推送地址:

repo: git@域名或IP:/home/repo/hexo.git

图片

如果Git配置失败,可以尝试使用root推送:

repo: root@域名或IP:/home/repo/hexo.git

然后,将本地仓库与远程仓库关联:

$ git remote add origin git@服务器IP:/home/repo/hexo.git

最后三连(hexo clean && hexo g && hexo d)上传,输入域名访问即可

图片

附加步骤

完成以上步骤后就可以通过域名访问网站了,接下来的步骤都是附加步骤

添加SSl证书

为网站设置SSL证书并强制HTTPS,开启HTTPS时需要放行443端口。
宝塔面板点击网站,找到刚才添加的站点,点击设置,选择SSL,可以在这里免费申请宝塔SSL证书,如果你已有证书的话,点击其它证书,将你的证书复制进去,点击保存,将右上角的强制HTTPS开启,至此完成所有步骤。
图片

添加404界面

修改nginx.conf的server项(或者直接在宝塔面板的目标站点操作)
添加如下代码:

    #开启error_page
    error_page 500 502 503 504 404 /404.html;
    # 承接上面的location
    location = /404.html {
        # 放错误页面的目录路径。
        root /home/hexo;
    }

图片

后记

  • hexo d 时known_hosts报错,提示冲突

图片
解决方法:根据报错给出的地址,找到known_hosts文件,因为我这里是第三行报错,所以就直接把known_hosts文件第三行删除即可

  • hexo -d 时报错:
 ! [remote rejected] HEAD -> master (unpacker error)
error: failed to push some refs to 'xxx.xxx.xxx:/home/repo/hexo.git'
FATAL {

图片

这种情况多半是目录所有者不是git;

设置hexo仓库目录所有者为git:

# chown -R git:git /home/hexo

设置git仓库目录所有者为git:

# chown -R git:git /home/repo

然后再上传;

如果还是不行,建议使用root推送;

在hexo配置文件中修改:

repo: root@域名或IP:/home/repo/hexo.git

如果root无法推送,同样大概率也是因为文件所有者问题,将hexo仓库和git仓库的所有者修改为root即可

  • 如何判断文件夹所有者是否正确呢?

回到/home目录,

查看git仓库和hexo仓库的文件夹所有者:

# cd /home

# ll

正常情况可以看到git仓库和hexo仓库的文件夹所有者全为git

drwxr-xr-x 2 git        git        4096 Jan 28 22:14 hexo
drwxr-xr-x 3 git        git        4096 Jan 28 22:15 repo

图片

版权声明
本文依据 CC-BY-NC-SA 4.0 许可协议授权,请您在转载时注明文章来源为 Z次元 ,若本文涉及转载第三方内容,请您一同注明。
更多专栏文章推荐
网站搭建
网站添加Live2d的看板娘——伊斯特瓦尔(Histoire)
2020/12/12
记录将网站转移到阿里云服务器过程
2020/7/15
Z次元——开源博客项目
2025/3/16
Umami:部署自己的网站访问统计工具
2025/2/16
评论区
发表评论
回复
D

1

DouYing2022年7月2日

老哥,配置git那步,ssh -v git@服务器ip的时候,要我输入密码,之后咋搞啊,输入密码之后也没显示版本什么的

前言
修改初始密码
开放端口
配置SSH
配置Git
准备工作
安装Git
配置Git
配置SSH
Git仓库配置
安装宝塔面板
添加站点
本地配置
附加步骤
添加SSl证书
添加404界面
后记
目录
前言
修改初始密码
开放端口
配置SSH
配置Git
准备工作
安装Git
配置Git
配置SSH
Git仓库配置
安装宝塔面板
添加站点
本地配置
附加步骤
添加SSl证书
添加404界面
后记
十玖八柒
每天进步多一点
欢迎到访φ(゜▽゜*)♪
最新评论
个人占星:

想给自己的网站弄个统计功能,但不会弄,头疼

永恒末匕:

好哇塞,这个厉害

十玖八柒:

测试图片发送

Corwin: @十玖八柒

哎 主要是我的个人网站用的是静态的cos 实现评论框还是有点困难

我的
个人主页
站点地图
RSS订阅
导航
十年之约
虫洞穿梭
全站友链
虚位以待
©2020 - 2025 By 十玖八柒 版权所有
豫ICP备20021466号