部署到腾讯云

        在之前都是将网站在本地上部署,无法让他人看到自己的网站,接下来就介绍如何部署到网上。这里我选用的是腾讯云服务器,需要购买服务器和域名,加起来大概在100出头左右。如果不想花钱,可以部署到Github上并且网上的教程也非常的多和全面,但是访问过慢是它的缺点。

准备腾讯云服务器和域名

        云服务器其实就是在腾讯那里租赁计算单元,通过其存储计算自己的本地部署的博客信息。每个人的电脑都可以当做服务器,但是购买的原因是因为若想让他人24小时随时可以访问,意味着电脑要24小时运行,电费都不止买服务器的钱。言归正传:

  1. 购买服务器

    腾讯云官网右上角控制台用微信扫码登录,回到主页进入云产品限时秒杀(目前对新人有优惠),如果之前用过腾讯云那可能价钱会高一点。

    选择1核2G购买搭载个人的网站已经绰绰有余,之后就是付款完成。

    购买之后需要安装配置服务器系统:

    地区:北京五区(离哪里近选择哪里) 系统:CentOS 7.6 64位 实例规格:标准型S5

    配置完之后就可以在控制台->云服务器->实例中看到自己购买的服务器啦~

  2. 购买域名

            域名的出现是因为IP地址不方便记忆,因此通过DNS服务器可以通过好记的域名找到IP地址。如果不买域名完全可以用上方图片的IPv4地址访问服务器。

            在腾讯云主页的域名特惠中可以选取不同的后缀,域名可能会已经注册需要多试一试,祝取到心仪的域名。

云服务器配置

  1. 安装依赖库

    1
    yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel 
  2. 安装编译工具

    1
    yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel 
  3. 查看git的版本

    1
    git version

    返回的结果git version 1.8.3.1,版本过于老旧所以要删除安装更新版本。

  4. 删除git

    1
    yum remove git -y
  5. 下载解压最新版

    1
    2
    3
    cd /usr/local/src #下载的目录 
    wget https://www.kernel.org/pub/software/scm/git/git-2.29.2.tar.gz #下载最新版
    tar -zxvf git-2.29.2.tar.gz #解压到当前文件夹
  6. 编译并安装

    1
    2
    3
    cd git-2.29.2    #进入文件夹
    make prefix=/usr/local/git all #编译源码
    make prefix=/usr/local/git install #安装路径
  7. 配置git的环境变量

    1
    echo 'export PATH=$PATH:/usr/local/git/bin' >> /etc/bashrc
  8. 刷新环境变量

    1
    source /etc/bashrc
  9. 查看版本号

    1
    git --version

    返回结果git version 2.28.0,说明更新完成啦。

  10. 创建git用户并修改权限

    1
    2
    adduser liuruibin
    passwd liuruibin

    adduser/passwd表示创建用户和设置liuruibin这个用户的密码,之后会输入你要设定和确认密码,返回结果passwd: all authentication tokens updated successfully.之后所有代码liuruibin需要改成你设置的用户名

    1
    2
    chmod 740 /etc/sudoers
    vim /etc/sudoers

    更改权限后打开设置文档。文档的相关操作::set nu显示行数,i插入数据,键盘esc退出插入模式,:wq保存退出

    1
    2
    root ALL=(ALL)       ALL 
    liuruibin ALL=(ALL) ALL

    文档打开后找到第100行左右,找到相应地方加入。liuruibin要改为之前你创建的用户名,之后保存退出。

    1
    chmod 600 /etc/sudoers

    权限再次修改回来。

  11. 本地Windows10使用Git Bash创建密钥

    打开到本地的博客文件目录下,右键Git Bush进入命令框,输入:

    1
    ssh-keygen -t rsa

    输入完后一顿空格即可,之后会返回SHA256密钥和密钥图。并且在你用户界面下发现出现了.ssh文件夹。

  12. 将本地创建中的文件复制

    用记事本打开.ssh/id_rsa并复制全部内容。在腾讯云服务器中:

    1
    2
    3
    su liuruibin
    mkdir ~/.ssh
    vim ~/.ssh/authorized_keys

    将刚才复制的内容全部粘贴过来。

  13. 本地测试

    在本地的Git Bush命令框中:

    1
    ssh -v liuruibin@服务器ip

    服务器IP是腾讯云服务器的IPv4公网地址。之后输入完密码后返回结果:

    1
    2
    Last login: Wed Jan 13 10:52:06 2021
    [liuruibin@VM-0-9-centos ~]$

    说明测试成功。

云服务器网站配置

  1. 创建网站目录并且设置权限

    1
    2
    3
    su root
    mkdir /home/hexo
    chown liuruibin:liuruibin -R /home/hexo
  2. 安装Nginx

    1
    2
    yum install -y nginx
    systemctl start nginx.service #启动服务
  3. 修改Nginx配置文件

    1
    vim /etc/nginx/nginx.conf 

    进入后在38行进行修改:

    1
    2
    3
    4
    5
    server { 
    listen 80 default_server;
    listen [::]:80 default_server;
    server_name liuruibin.com; #域名
    root /home/hexo; #网站目录
  4. 重启服务器

    1
    systemctl restart nginx.service
  5. 建立git仓库

    1
    2
    3
    cd /home/liuruibin
    git init --bare liuruibin.git
    chown liuruibin:liuruibin -R liuruibin.git
  6. 同步网站根目录

    1
    vim liuruibin.git/hooks/post-receive

    向其中加入:

    1
    2
    #!/bin/sh
    git --work-tree=/home/hexo --git-dir=/home/liuruibin/liuruibin.git checkout -f
  7. 修改权限

    1
    chmod +x /home/liuruibin/liuruibin.git/hooks/post-receive
  8. 在Windows10本地Hexo目录修改_config.yml文件

    1
    2
    3
    4
    deploy:
    type: git
    repository: liuruibin@82.156.82.249:/home/liuruibin/liuruibin.git #用户名@服务器Ip:git仓库位置
    branch: master
  9. 本机安装git插件

    在Hexo目录下:

    1
    npm install --save hexo-deployer-git
  10. 完善git的信息

    1
    2
    git config --global user.email "你的邮箱"
    git config --global user.name "你的名字"

    可以先做下一步,如果报错Please tell me who you are则需要完善你的信息。

  11. 在本机cmd或者Git Bash部署

    1
    2
    hexo clean
    hexo g -d

鸣谢❀参考大佬文章

Hexo部署到腾讯云的步骤是按照fuchenchenle的视频和博客来做的。

下方是大佬文章和视频教学的网址: