我对博客网站的认识
前言
本来是在GitHub上的trending上看vue项目,其中有个vuepress-theme-vdoing项目看起来挺有意思,我就去体验了一下。在边体验边写博客的过程中,引出了我对博客网站的认识,而且越写越多,有点与原来的题目不符合,所以干脆独立出这个部分。
写一写我对博客网站的认识,以及自己以后如何定位自己的网站。毕竟拥有一个自己的网站对每个计算机学生拥有很大的诱惑。
对博客平台的认识
大致分为两类:博客平台和个人博客。(自己设定的,意会一下就好)
- 托管博客:如CSDN、掘金、博客园等。
- 独立博客:邓占勇的博客。
在托管博客上写博客的好处和坏处(对比独立博客):
- 不用自己搭后台、设置页面、部署、SEO,入门门槛低;
- 优秀的推荐,让自己的博客可以被更多的人看到。
- 需要被审核;
在独立博客上写博客的好处和坏处(对比博客平台):
- 自己的博客,不用被审核;自由度高;
- 需要自己搭后台、设置页面、部署,入门门槛高;
- 安全、SEO等难以顾及;
- 域名、服务器等都需要投入钱,但是收入低。
托管博客提供技术和推广,博主提供优质内容。技术和推广帮助博主更专心写优质的内容,优质内容帮助博客平台获得更多的流量。这些是博客平台和博主合作的基础,并且合作也带来了双赢。
不过博主毕竟是在博客平台上发表自己的文章,所以有时候会寄人篱下,一部分文章是不会被批准的,而且页面美观不够个性。博客平台一方面希望博主多发文章,另一方面希望文章不用涉及敏感内容。这些使得博客平台和博主间也产生了冲突。
所以也衍生出第三方。内容管理系统CMS,如wordpress。还有静态站点生成器。帮助个人站长建站。
对独立博客的认识
独立博客还可以细分出原生和非原生、以及静态网站和动态网站。
原生中分为静态网站和动态网站两种。
静态网站的优点和缺点(对比动态网站):
- 编辑简单。页面用CSS和JavaScript进行调试,文档用HTML写,兼容性、安全性、SEO也可以参考其他网页
- 部署简单。绑定好域名,把静态文件放入服务器空间即可。
- 消耗服务器资源小。
- 缺失交互,如评论等。
- 编辑是在html文档中编辑,不便于发表文章。
动态网站的优点和缺点(对比静态网站):
- 功能强大,有后台,方便发表文章
- 工作量大,需要写数据库,完善前端和后端,虽然功能强大,但是工作量也巨大,还不能面面俱到,配置繁琐。
所以诞生了非原生的网站,技术大佬写好了中间的一切复杂的内容,使用者只需要安装,配置服务器即可使用。非原生脱胎于原生,也分为两种:静态博客系统和动态博客系统。
- 动态博客系统:如wordpress等的CMS。
- 静态博客系统:如hexo等的静态站点生成器。
动态博客系统的优点和缺点(对比原生动态网站):
- 配置难度远小于原生,界面美观性、兼容性、安全性、SEO都比较成熟;
- 更少的精力做更多的事;
静态博客系统的优点和缺点(对比原生静态网站):
- 通过静态站点生成器讲markdown文件转换为HTML,界面美观
- markdown比HTML更好写文档,更符合程序员写博客的习惯;
原生最大的缺点是工作量,工作量小的话功能太简单,工作量大的话运维太复杂。所以放弃原生,改用别人的框架。
动态博客系统虽然可以用更少的精力做更多的事,但是对我来说,不够酷。我还是比较喜欢挑战的,最有挑战的事情都让别人干,剩下的事情就有些索然无味,没技术含量。不过用动态博客系统去理解原生动态网站还是挺好的。
最终静态博客系统吸引了我的眼球。
对静态博客系统的认识
先引入一部分我以前搜集的博客,从其中引出我对静态博客网站的认识。
静态博客系统。
Hexo博客部署到远程仓库(Conding、Gitee、Github
动态博客系统
静态站点生成器
GithubPages服务器:一项静态站点托管服务。它直接从 GitHub 上的仓库获取 HTML、CSS 和 JavaScript 文件。
静态站点生成器Jekyll:Jekyll 使用 Markdown 和 HTML 文件,并根据您选择的布局创建完整静态网站。
看了halo的用户文档,还是特别不错的,看文档部署起来好像不难。有机会可以根据它的用户文档尝试一波。里面设计的知识点有springboot、宝塔、Linux、Dockers。并且2020年5月份还在更新。使用的话需要域名和Linux服务器。
至于hexo与Jekyll。引用其他人的使用体验
为什么用hexo代替jekyll:2016年9月写
hexo的官网很舒服,Jekyll的官网伤眼睛;
hexo需要node.js,Jekyll需要ryby和python;
hexo生成静态站点的速度比jekyll快;
不过体验者是后端工程师,这些可能不太习惯。
个人博客建站中jekyll/hexo各自的优势?:201年10月写
回答者最初用hexo,原因是有中文的文档,主题也挺nice。速度自不必多说,hexo作者也说了,是因为jekyll本身慢,所以才开发出来hexo。
两者相同点许多,最终都能生产静态页面。
但部署的时候还是有差别的。
hexo是把静态页面部署到GitHub上,这就是说,每次你更新的blog都要生成静态页面,在push上去。有时候可能md语法错误导致生成出现错误,挺让人着急的。也正因为这样的转换过程让我最后放弃。
jekyll是GitHub自带的。什么意思呢?自带jekyll引擎。你不用部署静态页面,只放项目源码就可以。这样只要在_post下面写md文件,就能生产blog。这样写blog的方式就好多了。可以直接在GitHub上写。多美妙。
当然,至于速度吗。看需求。至少做笔记我选jekyll。反正我写的也没人看。
我的选择
虽然Jekyll可以自动生成blog,不过它的官网是辣眼睛了,而且还需要安装ruby和python,我电脑现在就40G作用了。
而hexo虽然不能自动生成blog,不过官网舒服,用node.js,和我技术栈相关等。可以尝试。
(hexo与halo的对比,其实我看halo的官方文档更舒服些。可能是因为我开发过原生的动态网站,所以思路很好相互映照,而hexo有些不太熟悉。)
总结
博客平台与博主的合作点是:博客平台提供技术和推广,博主提供优质博客。
冲突点:博主想更加自由、更加个性;博客平台需要更加规范。
追求自由和个性的博主就会运营自己的个人博客。
不过个人网站没那么好搭建。于是就诞生了第三方。把个人建站的过程精简。
第三方和原生的合作点是:第三方提供技术,博主提供流量。博主可以实现自己自由的目的;
冲突点:原生的更加自由和个性;
原生:工作量小的网站实现方便但功能简单,工作量大的网站功能强大但运维困难。原生的网站可以大致分为数据库、后端、前端这三块。
我其实最想做原生,但是就是工作量太大了,而且运维复杂。
退而求其次。使用第三方。
这一部分暂时写到这。后续看情况尝试hexo和halo。
更新地址:GitHub
转载:https://blog.csdn.net/weixin_42875245/article/details/108545844