Centos下从零开始部署自己的博客

  • 操作系统:CentOS 8.0 64位
  • CPU:1核
  • 内存:2GB
  • 公网带宽:1Mbps
  • 技术栈:node+hexo+nginx+markdown
    PS:除了操作系统和技术栈,其它的请忽略

搭建基础环境

系统选择

本人是在企鹅处购买的云服务器,所以本文以Centos为基础搭建的,各位自行决定,不同系统,命令、配置等会有些差异,如有问题请百度。

安装node

Node下载官网找到下载地址,比如我当前的lts版本的下载地址是https://nodejs.org/dist/v12.18.3/node-v12.18.3-linux-x64.tar.xz,在linux中执行

wdget https://nodejs.org/dist/v12.18.3/node-v12.18.3-linux-x64.tar.xz

下载完毕后执行解压

tar -xvf  node-v12.18.3-linux-x64.tar.gz

最后建立软连接

ln -s -i /usr/local/node-v12.18.3-linux-x64/bin/node /usr/local/bin/node
ln -s -i /usr/local/node-v12.18.3-linux-x64/bin/npm /usr/bin/npm

/usr/local/node-v12.18.3-linux-x64/ 是你解压后node的目录,如果你没有移动文件夹,一般目录是/root/node**,这个步骤后,你就可以全局访问node和npm了,你可以运行

node -v
npm -v

在这里插入图片描述

测试安装是否成功,因为国内网络的原因,直接使用npm会比较慢,推荐各位安装cnpm

npm install -g cnpm --registry=https://registry.npm.taobao.org

这个时候,运行cnpm,你会发现报错了-bash: cnpm: command not found,因为我们还没有把npm下的变量添加到环境中,所以再执行下面的命令

export PATH="$PATH:/usr/local/node-v12.18.3-linux-x64/bin"

同样,这里也是自己的node的位置,各位注意下。至此,我们的node环境就安装完毕了。

安装hexo

可以访问hexo官网获取完整教程,下面讲下主要步骤
全局安装hexo,其实局部安装也可以,习惯了

cnpm install hexo-cli -g

安装完毕,执行hexo -v看是否安装成功。
我们先创建一个项目

hexo init blog

如果执行该命令报错,有可能是系统并没有安装git,可以执行下面的命令先安装git,然后重新执行上面的命令

yum install -y git

如果没有blog文件夹,会自动创建的,然后blog下面就会有一堆文件,暂时不管,搭建项目,只希望赶快先看到"Hello World",所以我们先进入blog,并执行打包。

cd blog
hexo g

然后用hexo自带的服务器,启动服务

cnpm install hexo-server --save
hexo server

这个时候,你就可以通过[ip地址]:4000访问你的博客了。
这里我们可以看到,网站的标题什么的都很原始,配置文件在_config.yml 下,根据配置文档配置就好了。然后再次运行,就会发现变化了,此时如果你把端口改成80,然后把域名解析,那么整个步骤就完成了,但我们还有nginx没有用上,怎么能结束了,我们关闭hexo服务,继续往下走。

安装nginx

nginx是c语言开发的,所以要安装nginx需要c编译器周边工具,先安装下面工具

yum install gcc-c++
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel

然后从nginx下载地址下载nginx

wget http://nginx.org/download/nginx-1.19.2.tar.gz

解压编译

tar -zxvf nginx-1.19.2.tar.gz
cd nginx-1.19.2
./configure
make
make install

完成后,启动nginx

cd /usr/local/nginx/sbin
./nginx

这个时候运行你的ip地址,应该就有nginx的欢迎界面了。

nginx代理

这个时候,我们就要将nginx与博客的地址绑定,进入配置

cd /usr/local/nginx/conf
vim nginx.conf

找到如下配置
在这里插入图片描述
我推荐各位把server{} 这一大段删掉(还是注释吧),然后添加以下内容
在这里插入图片描述
listener就是监听端口,server_name就是访问域名,root是文件位置,index就是index喽。保存后,执行重新启动,应该就能看到效果了(才怪)

/usr/local/nginx/sbin/nginx -s reload

是不是一个大大的403显示在眼前,这表示访问禁止,如果你百度,肯定会发现说什么文件目录权限等问题,其实问题是因为nginx默认的配置是nobody权限的,所以继续打开配置文件,把第一行的注释打开,并且将权限换成root。

vim /usr/local/nginx/conf/nginx.conf

配置如下
在这里插入图片描述
当然,重新加载前,可以检测下配置是否正确

/usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx -s reload

好了,这样就可以通过域名访问了,前提是

  1. 你有个域名
  2. 域名已备案至少已实名
  3. 域名已解析到ip

域名解析

首先找到自己服务器的公网ip
在这里插入图片描述
然后在域名解析处解析
在这里插入图片描述
这样,就真的可以访问了。

发布文章

我们先写一篇md的博客(其它格式也支持),推荐就用csdn的就好了,然后下载md文件(为什么要截这么长的,就是为了告诉你我正在写着了)。
在这里插入图片描述
然后把md文件传到hexo项目的source/_posts目录下,因为我用的是mac,可以直接使用命令

scp Centos下从零开始部署自己的博客.md root@139.199.206.192:/root/blog/souce/_posts

然后在服务器执行打包

hexo g

这个你会发现的你的博客居然没有标题,不要急,我们进行source/_posts,将刚才的文档加个标题,以前的是titie:标题 好像就可以了,现在不是这样子的,要加上

---
title: 文章标题
---

再次执行构建,应该就达到目标了。

最后

为什么要搭建博客

程序员的世界你不懂

为什么要搭建nginx

方便,而且还可以一个服务器搞定很多域名,比如我的
在这里插入图片描述
这样博客和其它内容就分开了。
结尾还是那句:
原创不易,欢迎转摘,最好能关注我的公众号
在这里插入图片描述
如果此文对你有所帮助,也希望你能打赏点
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值