【5】详细记录大学生自学搭建个人网站全过程,从0开始到小有成果
【5】详细记录大学生自学搭建个人网站全过程,从0开始到小有成果
接上文,这一集我们开始正式上传文章!
但在上传文章之前,博主的域名审核刚好到啦,那就先把域名解析做了。

8 域名解析
8.1 域名解析
老规矩,开篇先上参考的帖子。
序号 | 标题 | 链接 | 备注 |
---|---|---|---|
1 | hexo 博客开启 https (SSL 证书) | hexo 博客开启 https (SSL 证书)_hexo配置ssl-CSDN博客 | 救我狗命! |
2 | 阿里云免费SSL证书白嫖指南 | 阿里云免费SSL证书白嫖指南 - 知乎 (zhihu.com) | 整体流程参考价值很大。 |
3 | 阿里云官方给的ssl证书配置Nginx视频教程 | https://cloud.video.taobao.com/play/u/901422/p/1/e/6/t/1/306659382376.mp4 | 非常好! |
域名审核通过啦,不得不夸夸阿里巴巴的服务,在提交审核的时候会有客服电话打来帮助我写用途,提交管局审核花了很多天,但这几天都没计入ECS的费用期间。


我们在阿里云控制台搜索进入【云解析DNS】,进入【域名解析】页面点击【添加记录】。

按照如图所示添加两条解析记录,两者的区别只有【主机记录】不同,注意记录值填写实例的公网ip,这样我们就在浏览器地址栏输入www.wangyuanhang.cn和wangyuanhang.cn都能够访问到主页了。


添加完成后可以在记录页面看到。

之后我们就可以通过自己购买的域名访问到自己的网站了,初次访问会有些慢,因为要做DNS记录,但再访问就好啦。

8.2 申请SSL证书
浏览器会提示说不安全,是因为我们现在用的是http协议,我们可以改成https协议来访问,但是每三个月就要重新申请一下证书,这一步是可选项。
我们可以用阿里的免费SSl证书来做,首先在控制台打开【数字证书管理服务】,点击【SSl证书】,找到【免费证书】,点击【立即购买】。

然后按照图示选择。

之后点击支付,会支付一个0.00元的账单,如果失败就返回再来一次。然后回到证书控制台,这次在【免费证书】中点击【创建证书】。

按照图示选择并输入。

可以选择快捷签发,输入信息确认之后我们可以在详情栏看到证书签发的状态,然后点击【验证】。


根据提示,点击进入【阿里云DNS控制台】并添加下面的DNS记录用来辅助验证。

点击确认后,会在列表里出现一个新的记录。

然后回到刚刚的【证书申请】页,点击【验证】后即可看到DNS验证成功,然后我们等待签发即可,一般都很快。
8.3 SSL证书安装
Hexo是安装在Nginx上的,我们需要吧ssl证书安装到Nginx云服务器上才能使用https加密服务。
我们首先点击【下载】,把Nginx的两个证书下载到本地,一个是XXX.key,一个是XXX.pem。
我们需要把这两个证书放到云服务器中Nginx有权限读写的路径中,打开之前的ftp工具FileZilla,输入主机的ip地址、用户名root
、【密码】和端口22
后,别忘了密码哦,然后点击【快速链接】。

然后在远程站点中输入/usr/local/nginx/conf
,右键点击在里面创建一个名为cert
的目录,并在cert目录上右键点击【文件属性】,权限值改成777
后点【确定】。
在左侧找到我们下载的.key和.pem文件,把两个我们下载的文件拖动到这个目录里,注意检查两个文件权限,如果不是777就都手动改为777。

如果是以后再来更新的话,做到这一步,拖入新的密钥文件,再重启实例,然后进入/usr/local/nginx/sbin
重启nginx即可。
然后要修改Nginx的配置文件,博主是通过VNC登陆到服务器,找找Nginx的目录/usr/local/nginx/conf
里的nginx.conf,然后用vim编辑。
# cd /usr/local/nginx/conf |
按i
键进入编辑模式,然后向下找到最后的https服务配置项,按照下面的提示修改。
#以下属性中,以ssl开头的属性表示与证书配置有关。 |
博主修改完成后是这样:

如果想要所有的http访问自动跳转到https页面,在server里面添加一行复写信息。
rewrite ^(.*) https://wangyuanhang.cn$1 permanent; |
博主修改完是这样的:

然后我们按ECS,输入:wq
保存退出。
输入以下命令,确认Linux的443端口是否开放,如果已安装lsof可忽略第一步,安装过程中询问就输入y
然后回车。
# yum install lsof |
如果有显示说明已经开放了,如果没有显示说明没有开放,博主的就没有任何显示,输入以下命令打开443端口。
# /sbin/iptables -I INPUT -p tcp --dport 443 -j ACCEPT |
输入以下代码,再次打开Nginx服务。
# cd /usr/local/nginx/sbin |
博主的报出了以下错误,说明缺少ngx_http_ssl_module模块。

退回到上两个文件夹,连续输入两次cd ..
然后找到config文件。
# find . -type f -name configure |
找到后cd进这个文件,然后输入下面的命令,我们之前安装了openssl库所以此处应该不会报错,如果报错就安装以下ssl库yum -y install openssl openssl-devel
。
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module |
配置完成后make一下。
# make |
替换已经安装好的Nginx包,替换之前先备份一下。
# cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak |
先停止Nginx服务,再覆盖Nginx包,停止Nginx服务要把我们刚刚在nginx.conf
做的修改全注释掉。
# ./usr/local/nginx/sbin/nginx -s stop |
tips:如果此时提示command not found,那就是在Centos中没添加环境变量,添加环境变量。
# vim /etc/profile |
然后按i
,在底部添加:
PATH=$PATH: /usr/local/nginx/sbin //这个是你nginx的位置 |

之后按ESC,然后输入:wq
保存退出,我们还需要让其立即生效。
# source /etc/profile |
提示是否覆盖的时候,我们输入y
。

通过查看版本命令收看是否下载SSL模块成功,出现图示内容说明成功。
# /usr/local/nginx/sbin/nginx -V |

回到刚刚的配置文件,把注释掉的再弄回来。
# cd /usr/local/nginx/conf |
启动Nginx!不会有任何提示哦。
# /usr/local/nginx/sbin/nginx |
然后我们在本地计算机回到阿里云这个实例的安全组,检查以下安全组里是否打开了443端口,没有打开的就把这一条规则添加上。

此时,如果在浏览器网址栏输入https://wangyuanhang.cn就可以访问到我们采用https的网站啦,输入http://wangyuanhang.cn也会自动跳转成https。
9 发布第一篇文章
9.1 markdowm
hexo的文章是以.md格式在本地编辑,编辑完成后被解释成静态html放在服务器上得以访问。.md就是最常用的轻量级标记语言,经常用来编写各种计算机类的博客教程。.md文件可以用很多软件打开,记事本、Sublime、编译器等都可以打开,但是推荐用Typora打开,这是最专业最好用的markdown编辑器。
Typora的下载安装破解教程我放在这里Typora激活使用指南(2023年最新版) - 知乎 (zhihu.com),感谢网友的无私分享。
9.2 新建文章
在hexo的根目录中右键打开GitBash,输入以下命令来新建一篇博客。
hexo new my_first_blog |

Hexo会自动在source\_post
文件中创建一个.md
文件,打开这个文件,这就是我们写博客的文件了。
打开之后,会在上方看到基本配置信息,这个叫Front-matter
,这里可以添加很多其他选项,在这里可以做一些基础设置。

配置项 | 意义 |
---|---|
title | 网页文章标题 |
date | 文章创建如期 |
comments | 文章评论功能是否启动 |
tags | 文章标签 |
categories | 文章分类 |
keywords | 文章关键字 |
在下方空白处,我们输入“大家好,这是我的第一篇博客!”,选择这句话后,鼠标移动到【段落】处,选择【一级标题】,我们的文章大标题就写好了。

然后按照类似的方法再输入几个不同级别的标题和段落。
# 大家好,这是我的第一篇博客! |

文章我们写好之后,按快捷键Ctrl+s保存,然后关闭Typora,回到之前的GitBash,输入以下命令来完成文章的发布,以后每次更新完一篇文章,我们都要先保存,再输入这三条命令来上传。
$ hexo clean |
看到一大串的代码跑过之后,没有黄色或者红色的报错,就说明我们上传成功啦,此时在浏览器输入ip地址,由域名了就输入域名,我们就可以看到刚刚发布的文章。

大家点进去之后可以看到文章内容,并且注意hexo会帮我们自动生成目录,这个目录非常清晰好用。

写博客一定要逻辑清晰,所以这篇先讲怎么列标题。在下一篇,我们在博客中加入代码、链接、表格、缩进、图片、视频。
