背景

最近阿里云的服务器到期了,但是续费实在是太贵了

之前是嫌麻烦,然后续费还挺便宜的,所以就没折腾去换服务器

这回续费一个月就小一百, 吃不消了,不得不折腾一下,花了3块钱在华为云上抢到个服务器,于是要把之前的博客, 以及几个服务迁移到这个服务器上。


问题汇总

hexo 每次推送 nginx 都访问不到

宝塔自带的 nginx 的 config 里默认的角色是www,然而我看每次自动部署的时候都会变成 root
所以直接改nginx的配置就好,这样nginx 就能够读取到文件

在这里插入图片描述

在这里插入图片描述

证书无效

喵的,找了半天问题,发现是电脑的时间不是最新的时间,解决办法就是更新一下电脑的时间就好了

在这里插入图片描述

证书续费

为了开启 https 啊

在这里插入图片描述


域名配置

我的域名是在阿里云上买的,所以去阿里云上配置一下域名的解析,把之前的记录值改成现在的服务器 ip,不会立即生效,得过一阵子的。
在这里插入图片描述

网站403

我开的 80 端口,通过 ip 访问我的服务器资源显示 403 forbidden

于是我百度了一下,可能是权限的问题,查看到 这篇文章啊

之后我通过宝塔面板查看了一下网站的错误日志,发现权限有问题

在这里插入图片描述

于是我进入宝塔的 nginx 的 config 文件中看了看

在这里插入图片描述然后对应我网站根目录下的文件夹,发现所有者是 git,这个是我用 git 角色创建的这个文件夹,也是我网站的根目录,之后改成 www 就能访问到啦。

在这里插入图片描述


服务器 git 的建立

  • 首先,登录到服务器上

  • 接着安装 git

    1
    2
    3
    git --version // 如无,则安装
    yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel
    yum install -y git

    在这里插入图片描述

  • 创建用户并配置其仓库

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    useradd git
    passwd git // 设置密码
    su git // 这步很重要,不切换用户后面会很麻烦
    cd /home/git/
    mkdir -p projects/blog // 项目存在的真实目录
    mkdir repos && cd repos
    git init --bare blog.git // 创建一个裸露的仓库
    cd blog.git/hooks
    vi post-receive // 创建 hook 钩子函数,输入了内容如下

    1
    2
    3
    #!/bin/sh
    git --work-tree=/home/git/projects/blog --git-dir=/home/git/repos/blog.git checkout -f

  • 添加完毕后修改权限

    1
    2
    3
    chmod +x post-receive
    exit // 退出到 root 登录
    chown -R git:git /home/git/repos/blog.git // 添加权限
  • 然后测试一下 git 仓库是否能拉下来

    1
    git clone git@server_ip:/home/git/repos/blog.git

    在这里插入图片描述


Q: 启动的服务连不上

A:可能的原因是防火墙端口没有开开

华为云的安全组,以及宝塔桌面的防火墙设置都需要打开端口,比方说我打开了一个端口号为 6789 的服务

华为云