博客创建初心

像我们这种普通人写博客难免会让人说没事干,大约是真的没事干,以前是用印象笔记写作,用的免费版本,有些不顺心,毕竟是商业公司的产品,要赚钱的,而且我完全不知道他保存成什么鬼东西了。所以干脆把以前所记录的一些笔记和经验,重新迁移到这个博客上面吧。

当然,重要的一点,博客的文章使用的是Markdown文件使用手册这非常的有“极客范”,以我现在的年纪,还是很喜欢这些花里胡哨的东西。

博客里面大多数的东西我还是喜欢用中文,但不可否认英文逼格要高很多,那比如博客标题副标题什么的,无关紧要的就用英文了。我本人是没有过英语4级的。没有参加考试是一个原因,当然这不可能是主要原因。

最下面有博客的搭建流程跳转

尽量做到无遗漏。需要帮助的同学可以直接联系我。

博客里面有:

文学

最近一直看到好的文,好的篇章,苦于没有动力记载。写个博客当一回文艺少年,美哭。

影评

作为一个资深杠精,我是很爱看电影的,同时还爱说三道四,说这个拍的不好那个拍的不行,我行我肯定上,我不行的前提下,就随意逼逼几句吧。大部分是瞎说。

日记

翻译成notes更好一点,每一篇文章下面总喜欢说那么两句凑个字数,哎,我的博客应该要加一个字数统计功能。

赚钱

我看别人的博客都有打赏功能,那可能就是大佬吧。为了变成大佬,我也要下狠心写技术文章了,达到50篇就开通,如果将来看到文章,觉得小伙子不错的话,欢迎给我打钱~

技术

都在印象笔记里存着,而我的印象笔记因为内存原因用的网页版,穷人的乞丐版MacBook。原谅我,毕竟并不是世界上所有人都和你们有一样的条件。

开发语言

技术渣崽说的就是我,但是我很认真的,特别是这种写文档没什么用的时候。

  • java : 代码分享
  • python :
  • C:算法笔记
  • C++: 假的,我只会写hello world
  • object C :
  • swift : 我只是觉得这个很屌罢了
  • 网页:抓瞎

操作系统指南

这么多年唯一值得炫耀的就是修电脑了,家里的叔叔阿姨都喜欢找我装系统修电脑,我不像别的学计算机的同学那么喜欢耍流氓,说学软件的不是学修电脑的,这句话就像我是学跑步的不是学走路的一样可笑。当然你会修但你不愿意给他们修这又另说了。

修电脑是基本功夫,我日常使用的是macOs,给叔叔阿姨家七八年的老电脑喜欢装Deep操作系统,贼好使,买的服务器一般是centos 6版本,主要是7不默认安装ssh-server,很烦。

当然,我Windows 10 是用的最溜的。

运维

高中的时候啃完了一本《鸟哥的Linux(服务器配置)》,对各项服务配置都很了然于心,而且所有的详细配置全部写在印象笔记里,准备迁移出来。

  • Apacache服务 - 一个让网站可以访问的服务器。
  • DNS服务 - 域名解析服务,电脑只有IP地址,要让域名绑定IP,虽然我也不知道自己做这个东西有什么卵用。
  • DHCP服务 - 让本地的计算机网,不需要再设置IP地址。
  • Mysql服务 - 大型网站的话,数据库的支持必不可少了。
  • 高级的东西 - 比如kvm虚拟机呀,VIM编辑器呀。

哲学

1->2->3->.$

1
2
3
4
5
6
7
8
9
10
import world.china.hunan.*
import java.sql.date;
public class Introduce{
private String name = "彭远方";
private date birthday = "1997-03-08"
public static void main(){

}
//我只是测试一下md文件怎么写代码。效果很好。
}

博客搭建

在Windows、macOS、Ubuntu各创建了一次。还是比较简单易懂的。
1.安装Gitnode.js两个软件

2.注册GitHub,创建仓库。

请三思用户名,用户名即你将来的一个免费二级域名创建流程就是普通的创建流程,但是仓库名称请务必填写为:”用户名.github.io”,用户名即你注册的用户名,比如我的用户名为wexpeng,仓库名就是 “wexpeng.github.io”,同时,这就是域名。

3.安装完毕创建一个目录,取一个名字,比如Blog,在此目录中,右击点击“Git Bash Here”,出现一个terminal工具,我们依次输入以下代码:

1
2
3
4
5
6
7
$ mkdir Blog               //创建目录
$ cd Blog //进入目录
$ npm install hexo-cli -g //输入这一段代码即可搭建hexo环境。npm命令来自nodejs
$ hexo init //初始化当前文件夹,使之变成hexo工作目录
$ npm install //安装默认hexo博客
$ hexo g //生成静态网页
$ hexo server //启动博客服务器

此时在浏览器输入http://localhost:4000 应该就可以访问了。当然,此时非常简陋。

  • 在Windows安装请在官网下载安装包所有选项都可以选择默认。
  • 在Linux安装可以使用yum或者apt工具,git在Linux是内置的,所以只要安装nodejs。
  • 在macOS安装可以使用brew,这是同Linux的包管理工具一样的东西,但是要先安装,安装也非常方便,以下代码可以让macOS支持brew
1
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

博客修改

毕竟是开源的产品,我们作为学习者和受益者,能做贡献就做一些微小的贡献。比如这个博客想要实现更多的功能,要怎么办。经过学习研究,几乎我想到的功能基本上都有人实现了,还是很可喜的。至少不用花大把时间去创造了。在此基础上略做修改即可。

一个实用好看的界面

使用next主题,把next克隆到hexo/theme目录下,修改hexo的配置文件_confgi.yml下的theme为next即可

增加一个地点

这个功能暂时还没有人实现,不过没什么用,我使用的方式很简单,

修改文章模板
找到 ./hexo/theme/next/_macro/post.swig

在descript代码块后面添加以下代码:

1
2
3
4
5
6
7
{% if page.address %}
<span class="post-address">|&nbsp;
<span class="post-meta-item-icon">
<i class="fa fa-location-arrow"></i>
</span> {{ page.address }}</span>
</span>
{% endif %}

具体效果看本文标题下方
注意:要增加地址的文章头部需要添加”address”.没有添加的不会显示

增加字数统计

这已经属于hexo自带功能,所有很简单

在命令行打开hexo目录,输入以下命令

1
$ npm install hexo-wordcount --sava

再在配置文件theme\next\_config.yml把有关count的 参数设置为true,默认为false

我觉得这个可以看自己写了多少字很有用,至于统计访客的,直接在配置文件修改busunzi参数为true即可,不做公众网站的话没有必要打开。

1
2
3
4
5
6
$ npm install 

### 修改文章连接
这是一个非常实用的功能,对网站的SEO优化y很有帮助,而且分享网站就不会出现中文。
```bash
$ npm install hexo-abbrlink --save

增加文章密码功能

这个可把我弄惨了,搞了一个通宵,结果Google发现hexo也有这个插件

一样很简单,输入以下命令:

1
$ npm install hexo-blog-encrypt --sava

之后在每篇文章头部增加password标签就可以啦。

不过其默认样式实在是丑,而且调用了四个外部js,包括jQuery,bootstrap.不太理解作者是怎么想的,因为整个界面都会被影响,而我们只是想添加一个密码框把文章替换而已。所以我做了以下修改:

路径node_modules/hexo-bolg-encrypt/index.js

1
2
3
4
5
6
7
8
9
10
11
12
if (!('encrypt' in hexo.config && hexo.config.encrypt && 'enable' in hexo.config.encrypt && hexo.config.encrypt.enable)) {
return data;
}
if (!('default_template' in hexo.config.encrypt && hexo.config.encrypt.default_template)) { // no such template
hexo.config.encrypt.default_template = '<div id="security"><div class="input-container"><input type="password" placeholder="输入密码 回车查看." id="pass"/><button type="button" onclick="decryptAES()" style="display:none">Decrypt</button></div></div><div id="encrypt-blog" style="display:none"> {{content}}</div>';
}
if (!('default_abstract' in hexo.config.encrypt && hexo.config.encrypt.default_abstract)) { // no read more info
hexo.config.encrypt.default_abstract = '这篇文档已被加密.密码是你的名字.<div id="security"><div class="input-container"><input type="password" placeholder="此处输入密码无效。请点击阅读全文" id="pass"/><button type="button" onclick="decryptAES()" style="display:none">Decrypt</button></div></div><div id="encrypt-blog" style="display:none"> {{content}}</div>';
}
if (!('default_message' in hexo.config.encrypt && hexo.config.encrypt.default_message)) { // no message
hexo.config.encrypt.default_message = '加密文档';
}

把它所有的外部引入样式和js全部删掉,然后自己在./theme/next/source/css/\_custom/custom.styl文件后面添加:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// 加密博文密码框
.input-container {
width: 80%;
max-width: 800px;
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: reverse;
-ms-flex-flow: column-reverse;
flex-flow: column-reverse;
-webkit-box-align: start;
-ms-flex-align: start;
align-items: flex-start;
margin: 100px auto;
}
.input-container input {
-webkit-box-ordinal-group: 11;
order: 10;
-ms-flex-order: 10;
outline: none;
border: none;
width: 100%;
padding: 15px 0;
font-size: 20px;
border-bottom: 1px solid #d5d5d5;
text-indent: 10px;
transition: all 0.3s;
}

这个文件是nexT主题的扩展主题,在这里写的css会追加到main.css里面,非常方便。

多的就不说了,有问题或者想自己实现某个功能而技术上又难度的,call me!

后记

不忘初心,放得始终,但是我们要知道,100年后我们的一切,都已经被安排的明明白白

大约高一的时候,买了一个web空间,用ftp上传了一些自己写的Html网页,买了人生第一个域名(bsbm.pw)我是很喜欢那个域名的,当时刚刚看完一本网络小说——《不死不灭》,域名的后缀又刚好是我名字的缩写,但是因为每年续费需要一笔花销,当时的我,并没有预算。

此时,那个域名已经被域名交易商购买,期待有一天我成为富豪的时候再购买了。

不确定将来能不能成为富豪,但我确定将来不会再购买那个域名了。过去的,就让他过去吧。


高二学习Linux服务器的时候,拿我哥哥的大学生认证在阿里云买了一年的虚拟机,那是一台完整的电脑啊,我在那上面做过很多有趣的事情,比如利用Linux定时任务自动签到,甚至安装了网易云客户端刷等级,网易云的等级是听歌数量,不过这个bug已经修复了,我也没必要再写一篇博文了。但这个时候我开始用Wordpress认真的写博客。

2015年4月12号,当时的博客不是自己的笔记,完全是为了追隔壁班的一个女生,每周在博客上更新一篇“情书”,其实还蛮怀念那个时期的我。域名是http://jannah.cn, 她的名字叫嘉娜,这也是我给她取的英文名字,她似乎不喜欢,Jannah的中文意思是“天堂”,其宗教域名为http://jannah.com, 在17年初关停网站了,域名我买了三年。而此刻域名还属于我,她却已走了很久很远了。我当然不会再续费,感觉有点浪费钱。我骨子里还是个浪漫的人,累计写了100多篇情书,为她付出了几千块钱和完整的心,都没有碰过她的手。

情书也许哪天会传上来,不过不必看,因为这是一个反面例子。

2018年7月23日,筹划了两天的“免费”博客终于建好了,基于Hexo,使用全球最大开源网站GitHub的免费空间,可以省下了一年几百块的额外开销。技术层面上来说,不使用数据库保存而使用纯文本(Markdown属于纯文本)写作也是一大优势。写作确实是我一个目的,更多的目的,是让我一个具有浓厚仪式感的人更愿意去学习,我想说:发明Hexo的人真是个天才。

所有的记录都为我自己,如果你看到了,那你很幸运哈哈哈。