从壹开始的个人博客搭建
这世界上多得是自命不凡,指手画脚的人。我们所要做的,并不是跟上吐槽的潮流,而是在心中细细品味发生的一切,睁大眼睛好好看看这个世界,好好看看我们周围发生的一景一物一事,就像是袁隆平老先生深入田间地头,对作物仔细观察一样。在有足够的积累,有足够的资格对我们不满的事情指手画脚之前,要牢牢记住,生活就是做田调
基于hexo个人博客的搭建,从想法到实施,从开始到部署,从美化到第一篇文章
Q: 为什么你会有搭建个人博客的想法?
A:
服务器、域名选购
准备工作:购买域名和服务器
首先域名购买不是必须的,也可以在GitHub上部署自己的个人博客,可以在跳过购买域名的操作后直接跳转到本地hexo博客框架搭建
如果已经买过了海外服务器,可以在海外服务器上直接部署,不过可能要享受高ping福利,而且在某些操作后还在有挂掉的风险。所以,建议购买国内的服务器,华北就买北京服务器,华东就买上海的服务器。别的没用过但是阿里云是真的香(主要是被案例)。
下列举主要的几家云服务器提供的学生优惠对比
阿里云—云翼计划 (轻量服务器)
- 1核CPU
- 2G内存
- 5M峰值带宽
- 40GB SSD
- 每月流量1000G
- 地域:北京、上海
- 月付9.5元,半年付57元,年付114元
学生身份有效期内,服务器未到期前,学生机可按优惠价格在1-12月内续费,实例到期时间不超过学生身份有效期
换言之可在学生身份有效期内任意续费
华为云—云创校园
- 1核CPU
- 1G内存
- 1M峰值带宽
- 40GB 系统盘
- 地域:北京
- 月付9元,半年付54元,年付99元
- 1核4G版 月付18元
华为云购买时限只能选择 1,6,12个月
产品过期前,最多可按照优惠价格续费三次,且续费的时长需与首次购买时相同
*24岁以下免学生认证「二十四歳、学生です」
腾讯云—云+校园
- 1核
- 2G内存
- 1M峰值带宽
- 50GB系统盘
- 地域: 上海、北京
- 月付10元, 半年付60元,年付120元
腾讯云购买时限可选 1,2,3,6,12个月
有两次到活动页面按优惠价格续费的机会,机会用完则需要在活动页面抢购续费资格,否则按原价续费
加16元选购一年.cn域名使用权
其他
百度云
要抢购的,早九点开抢,广告推广非常勤快,另一个百度云应该都用过,懂的都懂
月付9元, 三月付18元,半年付74元 ???
天翼云—云创校园
月付9.9元,不支持续费
京东云—越云计划(已失效)
京东学生活动已关闭
美团云
无学生优惠或已关闭
海外服务器
VPS | 数据中心 | 类型 | 价格/月 | Linux | Windows | 支付宝 |
---|---|---|---|---|---|---|
Vultr | 16 | 非管理型 | $5 | ✔ | ✔ | ✔ |
Hostinger | 4 | both | $3.95 | ✔ | ✘ | ✔ |
Kamatera | 13 | both | $4 | ✔ | ✔ | ✘ |
AccuWeb Hosting | 15 | both | $7.99 | ✔ | ✔ | ✘ |
搬瓦工(bandwagon) | 6 | 非管理型 | $4.17 | ✔ | ✘ | ✔ |
interserver | 4 | 非管理型 | $6 | ✔ | ✔ | ✘ |
Hostwinds | 3 | both | $4.99 | ✔ | ✔ | ✔ |
ServerPoint | 6 | both | $5 | ✔ | ✔ | ✘ |
Contabo | 2 | both | $3.99 | ✔ | ✔ | ✘ |
I/O Zoom | 6 | both | $5 | ✔ | ✔ | ✔ |
Linode | 11 | 非管理型 | $5 | ✔ | ✘ | ✘ |
DigitalOcean | 8 | 非管理型 | $5 | ✔ | ✘ | ✘ |
SiteGround | 5 | 全管理型 | $80 | ✔ | ✘ | ✘ |
DreamHost | 1 | 全管理型 | $13.75 | ✔ | ✘ | ✘ |
Namecheap | 1 | 全管理型 | $14.88 | ✔ | ✘ | ✘ |
Liquid Web | 3 | 全管理型 | $19.99 | ✔ | ✔ | ✘ |
非管理型VPS相当于一台裸机,只提供操作系统,所有软件都需要自己装,有很高的自由度;全管理型VPS是已经安装好各种建站软件,可以在后台一键建站,但缺点也很明显:基本上也只能用来建站了。
购买海外服务器,不论是用作流量代理还是搭建个人博客,最低配的服务器也足够了,因此服务器质量,价格,是否支持微信支付宝支付才是最应该考虑的问题
数据来源于十佳评测 ,与真实数据可能略有出入 仅供参考
最后更新于 2020/04/04
Vultr 必须通过绑定信用卡或PayPal来激活以保证服务器过期的时候 vultr也能直接扣你的款来让服务器不被销毁并且在创建实例时,vultr默认不创建交换分区(Windows称之为虚拟内存),可能会在编译安装大型软件时出现内存不足,但很好解决 详见Linux创建Swap分区
与此同时,vultr是世界上数据中心最多的主机托管商,共16个,客服响应速度快,控制台面板简洁好看
最重要的是,vultr按小时计费,一小时的费用是$0.007,这意味着发现ping不通可以无成本立马换掉,而不用联系客服换ip,(换了三五个可能也还是ping不通
搬瓦工大概是中国用户数量最多的外国vps服务提供商,支持微信支付宝付款
品牌运营超过十年(品牌的力量)
缺点就是专注于技术研发不在乎前端设计,官网看起来非常的苏联
域名购买
国内国外不同商家域名购买价格大差不差
国内要备案国外不需要(其实是不能)
国外网站推荐Namesilo和Godadday(俗称狗爹)
namesilo的购买可以看跳跃者的详细教程
还有一个可能的风险,国外域名被查到可能会被dns污染俗称域名被墙,使用代理之后才能解析出正确的ip,案发现场
我买的是阿里的服务器就顺便在万网上把域名买了,具体信息可以自行去官网对照调查
万网挑选合适的顶级域(TLD:top-level Domain) 对.com .cn .moe什么的没有特殊情怀的话还是挑便宜的好,推荐.top和 .pw 价格大概一年不到十块钱
域名备案
既可以在阿里直接备案,但是也要在阿里买服务器,不知道什么时候开始的规定:服务器要购买三个月以上才可以备案,流程相对傻瓜,照着走就可以,但是要各种证件照填各种资料加上审查,顺利三到四天,最迟十五天。
也可以选择上管局备案的官网自行解决,总的来说流程都差不多。因为等待的时间很漫长,可以先进行后面的操作。
域名解析
在万网购买的域名,域名控制台操作一栏有域名解析服务
点击添加记录后在弹出的界面填写相关信息
静态博客的话记录类型选A就可以
主机记录就是你想要的三级域名首先要添加上@和www(分两次),这样就可以通过www.sur18.top和sur18.top直接访问到本服务器上
解析线路留作默认
记录值就是你的服务器IP—公网IP
TTL10分钟就可以
服务器环境配置
分别是与服务器建立连接的命令行和图形界面工具
使用方法非常简单,Xshell里点击新建会话,名称按照喜好设置,主机输入公网IP。用户身份验证里选择password登录方式,用户名默认root,密码可以在vps控制台获取。
Xftp在某些特殊场景下会用到但是命令行已经能够解决大部分的问题,具体连接方法与xshell类似
安装配置Nginx
1 |
|
CentOs的包管理器默认是yum,如果是Debian或者别的Linux系统可以尝试apt install
在随便什么位置新建文件夹存放博客网站文件,我是在/var路径下建立了blog 的文件夹,在其下又建立了名为hexo的文件夹
1 |
|
- 修改Nginx的配置文件
1 |
|
找到并修改下面的一段
1 |
|
效果如下
1 |
|
其他维持原样,做完后重启Nginx
1 |
|
在这里有可能会报错(至少我遇到了)
报错信息如下
1 |
|
原因:
没有nginx.pid 这个文件,每当我们停止nginx时(nginx -s stop), nginx 会把 /user/local/var/run/路径下的nginx.pid文件删掉
方案一:
1 |
|
直接重启nginx应该会生成nginx.pid文件
如果方案一不可行,执行方案二:
1 |
|
查看nginx配置文件路径后指定conf文件,然后再重启
1 |
|
问题解决
参考 文章真正来源不可考,但我是从这里找到的解决方案,对原作者表示感谢
安装配置git
git是重要的版本控制工具
git的下载安装
1 |
|
创建git账号
1 |
|
添加用户权限
1 |
|
然后编辑这个sudoers文件,找到如下内容
1 |
|
授权:
1 |
|
设置密码
1 |
|
根据提示输入密码后就可以通过Windows登录服务器的git账户了
注意要替换成自己的服务器的公网IP
1 |
|
安装git仓库
既然前面博客放在了var文件夹下,仓库就也创建在同文件夹下
1 |
|
初始化并创建具体的仓库:
1 |
|
此处创建一个Git钩子,位于仓库内的hooks文件夹内:
1 |
|
加入两行代码,原因参见猫爪博客
1 |
|
授权
1 |
|
添加密钥对登录(optional)
添加密钥对的方法大差不差,但是要记得修改权限
1 |
|
本地hexo博客框架搭建
这里可以看CodeSheep的视频——手把手教你从0开始搭建自己的个人博客
这里是在GitHub上部署自己的hexo博客,如果没有购买域名可以按照视频上的方法操作
下面简要介绍具体的操作
- 下载安装node.js
去node.js官网下载node.js长期支持版(LTS),然后走流程一路点是安装
安装完成后可以先查一下node的版本确定安装成功
1 |
|
出现类似的版本号就算成功了
npm是一个包管理器,但是由于国内速度很慢,所以可以利用nom安装淘宝的镜像cnpm
1 |
|
等待安装成功就可以使用了,也可以用-v来查版本号确定安装成功
- 接下来是安装hexo
1 |
|
cli表示client,客户端,至此,hexo已经安装完毕
在随便什么地方建立一个名字叫blog的空文件夹,要好找
比如我直接放在D盘
1 |
|
mkdir 命令在Windows下也能使用
- 博客初始化
1 |
|
等到出现如下字样就代表博客初始化成功
1 |
|
在本地看到自己的博客只需要一个指令即可
1 |
|
或者这个命令也是一样的
1 |
|
初始化博客会有一个叫landscape的默认主题,和一篇叫hello world的hexo介绍文章,这篇文章简明扼要地介绍了hexo的核心基础命令
新建一篇文章
1 |
|
在本地运行
1 |
|
每次更新文章,有两个命令要配套使用
1 |
|
部署
1 |
|
前面的hexo s是在本地查看,用作每次不管是文章还是配置改动后查看效果,而部署后,文章会真正同步到服务器,在输入域名后也会看到变化
Notice hexo的所有命令,比如hexo s之类,都需要在blog的文件夹下运行
忘记了名字的大佬曾举例描述在根目录运行hexo g的现象
你在~根目录运行 hexo g当然没反应… 相当于你走在大街上吼一声:老婆饭煮好了没?
你老婆在家听不见的…
当然也可以配置环境变量在根目录也能运行hexo相关命令,可以但没必要
部署到服务器上
在本地找到博客根目录下的_config.yml文件 找到下面的内容并编辑
1 |
|
#注意这里也要替换成自己服务器的公网IP
默认端口是22,就不需要改动了,如果ssh端口改了这里要在IP后加上‘:端口号’例如端口号修改为1145则这里需要修改为ssh://git@192.168.0.1:1145/var/repo/hexoBlog.git
修改完毕后,默认界面看着很别扭不是吗
界面美化
关于服务器美化,首先要挑选一个好看的主题
这时就要在花里胡哨和简洁美观之间权衡利弊,既要色彩鲜明,让人感受到爆炸性的美感,又不能花里胡哨像是土味宣传单;既要简洁大方,又不能像白纸一样干净
具体可以根据自身审美在hexo官方的主题里挑选→themes
具体clone别人的主题的方法已经在codesheep的视频里讲的很清楚了,此处不再赘述
也可以考虑推荐的两个主题,一个是根据 WordPress的Akina主题三次修改后的Sakura主题,作者 mashiro 文档在这里
这个主题很漂亮,需要的功能几乎都有,几乎不需要增减代码,问题在于可定制性低,有很多东西不能改,不能挑,但所幸作者的审美没有很灾难一切的挑选都很合适
另一个是 fluid主题,另主题文档,可定制化相对较高问题在于有些想要达到的效果需要修改css文件,用户使用起来可能会比较折腾
这两种主题按照文档操作即可,文档已经很全面了
另,fluid美化日记不定时更新
如何写出第一篇文章
首先新建一篇文章
1 |
|
主要一定要在blog路径下运行
文档会自动生成,用某种markdown编辑器去编辑这个文档,强烈推荐typora,可以自行去官网下载
typora — 书写即美学
写好一篇文章的关键有三
- 熟练使用typora,markdown语法烂熟于心
- 配图
博客好不好看,配图占一半,可以去各大平台受冷落好看的图片,另外要注意遵循网站的版权协议
- front-matter
在一篇文章md文件最上方有一个以---
分隔的区域用于指定某些变量
1 |
|
标明这篇文章的题目,日期,分类和标签,也有一些其他的参数可以填进去,比如文章配图,具体会在主题文档又详细说明
参见hexo文档有对front-matter的详细说明
鸣谢
本文参考资料
一言様、あなたの心は、どんな世界ですか?
———
蜘蛛は結露の網の上に座っていた
のんびりと
涼しい風が吹いている