使用云服务器&Hexo搭建个人博客


前言

想玩玩云服务器,就在上面搭了一个博客,用来记录平时遇到的一些坑和一些技术分享。现记录一下搭建过程。


一、Hexo简介

这是一个快速、简洁且高效的博客框架。大致架构为我们在自己的计算机上写好文章将它保存在source文件夹中,然后hexo会将我们的写好的文章转化为静态的HTML文件,之后push到git仓库,服务器中配置好git-hooks,就可以自动将我们仓库中的东西更新到网站的根目录,于是就能看到整个页面了。

二、准备工作

1.购买云服务器

2.申请域名,解析到服务器IP

3.后续网站备案

在哪购买的云服务器就哪里备案。

二、云服务器操作

1.配置安全组规则

http协议需要访问80端口,因此需要配置开放端口。在各大服务器的控制台可以添加安全组规则。

2.Nginx安装设置

yum install nginx   安装nginx
systemctl start nginx 开启nginx服务
systemctl enable nginx 开机自启

访问公网IP,若出现Nginx画面,则成功。

3.Nginx配置文件

我们通过新建一个配置文件,并将其以include的方式包含如nginx.conf中。
在/etc/nginx目录下创建一个文件夹叫vhost

cd /etc/nginx/  
mkdir vhost  
cd vhost  
vim blog.conf

编辑blog.conf文件内容

server{  
 listen 80;  
 root /home/www/website;  
 server_name 这个位置写填写域名或者服务器的公网ip;  
 location /{  
 }  
}

打开/etc/nginx/目录下的nginx.conf文件

vim /etc/nginx/nginx.conf

在其中引入我们编写的配置文件
引入
新建存放博客的目录

cd /home  
mkdir www  
cd /www  
mkdir website

这样我们就可以得到 /home/www/website 作为博客的根路径,就和配置文件中的路径对应上了。

注:这里的文件夹权限需要修改。因为下面我们会建立git用户,因此需要允许git用户对此文件夹进行读写权限。否则,一切配置完成后会出现403页面。

chmod -R 777 /home/www/website

还有一点原因也有可能,在nginx.conf中,需要修改user nginx为user root。

4.Git安装及本地登录

这一步的目的是可以让我们在本地使用ssh的方式连接到云服务器,然后就可以用命令行的方式将博客push到服务器上。

yum install git  安装git
adduser git  配置git用户
## 修改用户权限:
chmod 740 /etc/sudoers
vi /etc/sudoers

找到这个位置添加下面这句话
git ALL=(ALL) ALL
在这里插入图片描述
保存退出后 将sudoers文件权限改回原样

chmod 400 /etc/sudoers
sudo passwd git  设置git用户密码

切换到git用户,然后在~目录下创建.ssh文件夹,生成密匙。

su git
cd ~
mkdir .ssh
cd .ssh
ssh-keygen  生成公钥密匙文件

此时在目录下就会有两个文件,分别是 id_rsa 和 id_rsa.pub
其中 id_rsa.pub 就是公钥文件 我们复制一份

cp id_rsa.pub authorized_keys
## 修改它的权限
chmod 600 ~/.ssh/authorized_keys
chmod 700 ~/.ssh

然后我们在本地(自己的电脑上)打开cmd使用ssh连接服务器

ssh git@公网IP  需要在安全规则中配置22端口

注:这里插一个我遇到的小问题。因为之前我的电脑连接过服务器,然后服务器重置初始化了,再次连接时出现报错:WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!
这是因为第一次SSH连接时,会生成一个认证,储存在客户端中的known_hosts,但是如果服务器验证过了,认证资讯当然也会更改,服务器端与客户端不同时,就会跳出错误啦~因此,只要把电脑中的认证资讯删除,连线时重新生成,就一切完美啦~要删除很简单,只要在客户端(本地电脑的cmd)输入一个指令:ssh-keygen -R +输入服务器的IP

登录成功后初始一个git的仓库,并且新建一个post-receive文件,操作如下:

cd ~
git init --bare blog.git
vim ~/blog.git/hooks/post-receive
## 输入
#!/bin/sh
git --work-tree=/home/www/website --git-dir=/home/git/blog.git checkout -f
## 授予该文件可执行权限
chmod +x ~/blog.git/hooks/post-receive

至此我们就完成了所有关于服务器端的配置。

三、本地主机操作

1.安装Node.js

官网下载安装即可。

##测试是否成功
node -v
npm -v
##出现版本号说明安装成功。

2.安装Hexo

## 将npm换成淘宝源,然后安装cnpm
npm config set registry https://registry.npm.taobao.org
npm install -g cnpm --registry=https://registry.npm.taobao.org
## 安装hexo
cnpm install -g hexo-cli
## 在本地选择一个目录来初始化博客,比如在F:盘下创建一个Blog文件夹,在该文件夹目录下
hexo init
## 完成hexo的初始化工作,初始化完成后安装两个插件
npm install hexo-deployer-git --save
npm install hexo-server

博客生成三步走:

hexo clean //清空hexo缓存
hexo g   //全拼hexo generate,生成hexo博客
hexo s   //全拼hexo server,本地访问hexo博客
hexo d   //全拼hexo deploy,将hexo部署到服务器上
3用于本地测试,4为部署,执行一个即可。

3.配置hexo

在刚才生成hexo的目录下,找到_config.yml,打开它。 找到deploy 做如下配置

deploy:
  type: git
  repo: git@(公网ip):/home/git/blog.git
  branch: master
  message:
  ##注意这个设置的格式,type等设置前面两个空格,冒号后面一个空格,保存退出。

最后在服务器上重新运行nginx服务器

nginx -s reload

四、部署完成

输入自己的公网ip或者域名查看博客部署是否成功。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值