论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
开源技术
›
开源技术
›
使用 Hexo 与 Github Page 搭建个人博客
使用 Hexo 与 Github Page 搭建个人博客
温锦文欧普厨电及净水器总代理
金牌会员
|
2024-10-12 18:58:36
|
显示全部楼层
|
阅读模式
楼主
主题
842
|
帖子
842
|
积分
2526
原文章发布在个人的博客上:使用 Hexo 与 Github Page 搭建个人博客 | What was I thinking? (dawnfz-lenfeng.github.io)。
一次偶尔的机会,碰到了Yihui Xie | 谢益辉大佬的博客,第一反应是轻便!漂亮!能在一个世外桃源一般的地方表达自己,就像初遇本站架构 - Tan Jay | 唐 洁 (tang-jay.github.io)1里面所说,“我的心被狙中了”!一阵莫名的激动让我想创建一个自己的博客。
于是趁不多闲余时间,大约花了一个下战书的时间把本站构建起来,效率算高。总体来说难度不算大,因此总结一下踩到的坑和帮助过我的资料。
准备工作
本地环境
在开始之前,请确保安装以下软件:
Git: https://git-scm.com/
Node.js: http://nodejs.cn/
按照提示直接安装即可。安装完毕以后,可以在 cmd 里面通过以下命令检查是否安装成功:
node -v
npm -v
git -v
复制代码
正确安装会输出书本号信息。
本地 ssh 毗连 Github
使用 ssh 毗连至 github 是步伐员最基本的操作,首先先确保自己拥有 github 账号。
打开 cmd 或者 powershell 面板,输入以下命令配置本机 ssh:
ssh-keygen -t rsa -C "邮件地址"
复制代码
连续回车后终极会生成文件至C:\Users\用户名\.ssh\中。找到.ssh\id_rsa.pub文件,用记事本打开并复制里面的内容,打开你的github主页,进入Settings->SSH and GPG keys->New SSH key:
将id_rsa.pub里面的内容到复制到Key中即可。
随后使用以下命令进行毗连测试:
ssh -T git@github.com
复制代码
出现以下提示词即为毗连成功:
Hi <你的用户名>! You've successfully authenticated, but GitHub does not provide shell access.
复制代码
如果出现
ssh: connect to host github.com port 22: Connection timed out.
复制代码
则实验更改端口号为 443。即在先前C:\Users\用户名\.ssh\目录下新建config文件,用记事本打开,输入:
Host github.com
User git
HostName ssh.github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
Port 443
复制代码
再实验用ssh -T git@github.com
测试,基本能办理问题。
npm 镜像配置
在开始之前,由于国内网络问题,推荐使用阿里定制的 cnpm 命令行工具代替默认的 npm:
npm install -g cnpm --registry=http://registry.npmmirror.com
复制代码
随后可检查是否安装成功:
cnpm -v
复制代码
安装成功之后,以后安装依赖包的方式和 npm 的是一样的,只是 npm 的命令换成是 cnpm 就可以了,好比:
cnpm install express
复制代码
网站摆设
Hexo 本地摆设
本地环境摆设完成后,hexo 的摆设非常简单!
首先辈入 cmd 窗口输入指令安装 hexo:
cnpm install -g hexo-cli
复制代码
创建一个目录,比方D:/blog,进入该目录中,输入
hexo init
复制代码
但注意此处可能会因为网络问题无法初始化,需要一点运气成分。如果挂梯子仍无法办理,参考以下办理方案2:
本质上hexo init
等价于以下命令:
git clone https://github.com/hexojs/hexo-starter.git .
git submodule init
git submodule update
npm i
复制代码
因此只需替换成镜像网站即可:
git clone https://gitee.com/weilining/hexo-starter.git .
git submodule init
git submodule update
cnpm i
复制代码
如果配置成功,命令行输入:
hexo s
复制代码
默认会在 http://localhost:4000/ 构建网页,初始会看到:
Hexo 摆设至 Github
首先在 Github 中创建新的仓库,命名为<username>.github.io.
我们再安装 hexo-deployer-git:
cnpm install hexo-deployer-git --save
复制代码
然后修改 Hexo 目录下的_config.yml文件:
deploy:
type: git
repository: git@github.com:<username>/<username>.github.io.git
branch: main
复制代码
修改完成后运行以下命令:
hexo d
复制代码
稍等片刻访问 https://username.github.io 即可看到页面。
常用命令
在生成的 Hexo 目录中,目录结构为
node_modules:依赖包
public:存放生成的页面
scaffolds:生成文章的一些模板
source:用来存放你的文章
themes:主题
_config.yml: 博客的配置文件
此中所有文章会存放于source/_posts之下,如果要写文章可以在命令行输入:
hexo new post "My New Post"
复制代码
此时会调用scaffolds/post.md模板,主动在source/_posts中生成My New Post.md文件。实际上,也可以自己手动创建,只需将注意配置好 md 文件中的头信息即可。
在 Hexo 中构建和发布网页只需认识以下几个命令即可:
清理页面缓存
hexo clean
复制代码
编译页面
hexo generate
hexo g
复制代码
创建本地服务器,默认所在为 http://localhost:4000/
hexo s
erverhexo s
复制代码
摆设到远程服务器
hexo d
eployhexo d
复制代码
更多信息可以访问 Hexo 官方文档。
个性化配置
主题选择
可以在Hexo 主题官网浏览心仪的主题,访问对应 github 仓库,使用git clone进行下载。以本站的 Maupassant 为例(不希望你和我撞车!):
git clone https://github.com/tufu9441/maupassant-hexo.git themes/maupassant
复制代码
如果网络问题下载不下来可以使用镜像:
git clone https://gitclone.com/github.com/tufu9441/maupassant-hexo.git themes/maupassant
复制代码
然后编辑Hexo目录下的_config.yml,将theme的值改为你的主题文件夹名即可。详细的主题配置可以查询主题自带的文档,比方本站主题文档。
Markdown 引擎优化
Hexo 默认搭配的 Markdown 渲染器是hexo-renderer-marked,但其支持的渲染格式有限,因此更推荐使用功能更加强大,渲染速度更快的hexo-renderer-markdown-it渲染器3。经过测试,发现hexo-renderer-pandoc更好用,完美支持多行公式4!
通过以下方式安装:
cnpm un hexo-renderer-marked --save
cnpm i hexo-renderer-pandoc --save
复制代码
如果碰到无法卸载的情况,可手动删除 Hexo 根目录下node_modules/hexo-renderer-marked文件夹,而且修改对应package.json。
在使用hexo-renderer-pandoc过程中,可能会碰到图片标题渲染问题,即 pandoc 引擎和主题都会为图片添加标题,从而造成渲染效果中出现2个标题。
办理这个问题只需要禁用 pandoc 的添加标题的功能即可5:
# disable duplicated titles in images
pandoc:
extensions:
- '-implicit_figures'
复制代码
Obsidian 工具链
关于写条记的工具,这里推荐 Obsidian,能够很好的与 Hexo 进行联动兼容。
首先去Obsidian 官网下载 Obsidian,打开后在source目录下创建 Obsidian 仓库。此时我们可以直接在_posts下创建条记,完美兼容 Obsidian 生态。
我们还可以使用 Obsidian 的模板系统。在source/目录下创建新文件夹命名为template。在 Obsidian 的设置里面将其设置为模板文件夹,并将 Hexo 目录下的scaffolds/中所有文件复制进该文件夹。
此中post.md的配置可参考:
---
title: {{title}}
date: {{date}}
tags:
toc: false
mathjax: false
---
<!--more-->
复制代码
此中<!--more-->之前的信息会主动变为择要,而{{title}}与{{date}}都是 Obsidian 内置属性,在插入模板时可以根据文章名和系统时间主动生成,格式可以在设置里面更改。
需要写条记时,只需在 Obsidian 左侧点击“插入模板”即可一键配置头信息。
此时需要在 Hexo 目录下的_config.yml中添加exclude信息,克制页面构建时读取此类文件夹:
exclude:
- ".obsidian/**/*"
- "template/*"
复制代码
最后注意,在 Obisidian 中插入图片必须使用 md 格式,即![]()格式,而并非 Obsidian 的![[]]格式,而且路径需要使用绝对路径,比方\images\1.png。
另外也很佩服这位博客作者,能在四天零基础构建(包罗学习 git ),动手本领也了得! ↩︎
彻底办理 hexo init
卡顿问题 | Ln’s Blog (weilining.github.io) ↩︎
原先参考自【Hexo】选择更高级的Markdown渲染器_hexo-renderer-marked-CSDN博客 ↩︎
关于多行公式渲染折磨我非常久,终极这篇博客救了我!Hexo 书写 LaTeX 公式时的一些问题及办理方法 · Blowfish (jdhao.github.io) ↩︎
Hexo NexT 使用 pandoc 插件渲染图片问题 - Flyan Lu’s Blog (fanlumaster.github.io) ↩︎
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
正序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
发新帖
回复
温锦文欧普厨电及净水器总代理
金牌会员
这个人很懒什么都没写!
楼主热帖
可扩展性对物联网管理系统有哪些影响? ...
如何入门渗透测试
SQL的语法
简析XDP的重定向机制
一文详解|影响成长的关键思考 ...
高校学籍管理系统(SQL Server数据库课 ...
2 分钟,了解 4 个极为有用的 MetricsQ ...
OLED显示曲线
大企业才用的分布式唯一Id,它比GUID好 ...
TypeScript与JavaScript的区别
标签云
存储
挺好的
服务器
快速回复
返回顶部
返回列表