手把手教你搭建Hexo博客

2022-12-27 0 238

编者按|许多合作开发人员构筑他们的网志,会优先选择原有的网志控制系统计划,比如说:Wordpress、Hexo和Halo等。当中Hexo网志做为全动态网志,没资料库、对伺服器天然资源耗用也较低,所以可订制化某种程度很高。责任编辑将率领诸位合作开发人员如前所述Lighthouse高性能伺服器加速构筑Hexo网志。

Hexo网志是两个如前所述Nodejs合作开发的两套网志控制系统。借助于Hexo,合作开发人员能把他们的Hexo实用性和Markdown该文,校对为HTML、JavaScript、CSS的存动态天然资源。exo对每块该文都有聚合.html文档和真实世界DOM原素,而并非Vue在非预图形和非SSR商业模式下的Hash或History路由器商业模式。

举个范例,这是Hexo的指示行:

合作开发人员采用Hexo指示,能聚合public文档夹。外部是能正式发布的动态文档了:

public内:

预备辅助工具

那时讲义正式宣布已经开始,具体来说看一看他们须要预备甚么?

邻近地区:两台加装了Node.js和Git的笔记本电脑,操作控制系统随便(Windows、macOS和Linux均可)。

伺服器:两台Lighthouse(提议采用Linux控制系统,e.g. Debian、CentOS)

可选:CDN文本递送结点、两个域名

假如你邻近地区并没加装Git,Windows使用者参照:https://git-scm.com/download/win;macOS和Linux能间接采用应用软件指示行加装。

假如你邻近地区并没Node.js,所以我对个人所推荐加装NVM(多版Node.js指示行),参照讲义:

https://cloud.tencent.com/developer/article/1812323

手把手教你搭建Hexo博客

CDN文本递送结点是可选实用性,采用腾讯云CDN结点,能轻易缓存Hexo和图床天然资源,加速使用者上网体验,并且减缓Lighthouse带宽压力。值得注意的是,采用腾讯云CDN须要备案搜索引擎。

Lighthouse部分,诸位合作开发人员请自行前往官网购置。

手把手教你搭建Hexo博客

伺服器,均指任意两台Lighthouse伺服器,实用性水平也没指定要求。伺服器控制系统提议优先选择Linux伺服器,我优先选择的是Debian10。

手把手教你搭建Hexo博客

伺服器初始化

手把手教你搭建Hexo博客

环境预备

之后,他们给伺服器加装依赖和应用:

1)宝塔环境

刚刚他们已经成功SSH登录伺服器,之后是加装宝塔镜像:

手把手教你搭建Hexo博客

手把手教你搭建Hexo博客

之后,记得去伺服器后台放行8888端口:

手把手教你搭建Hexo博客

手把手教你搭建Hexo博客

2)Git:用于邻近地区Hexo和图床推送

伺服器上间接采用应用软件管理其加装:

用宝塔加装脚本加装过程中,会自动在伺服器上加装Git环境。

手把手教你搭建Hexo博客

3)Nginx:用于Web伺服器,即正式发布Hexo打包的动态网志和做为图床。

Nginx能说是两个优秀的高并发伺服器。因为采用宝塔面板,所以在加装好宝塔面板后,进入宝塔面板优先选择加装Nginx即可:

创建网站

他们采用宝塔创建两个网站文档夹:

blog:用于存放Hexo打包的public文档(后续有由邻近地区git push)

imageHost:用于存放图片(也是他们的图床文档夹,后续也由邻近地区push)比如说:

手把手教你搭建Hexo博客

采用宝塔的可视化Nginx,创建Nginx指示行。设置文档夹权限:

手把手教你搭建Hexo博客

创建Git

他们邻近地区Hexo打包为public动态天然资源,须要采用git的git push推送到伺服器,由伺服器的Nginx进行网站展示。图床同理。他们须要在伺服器上实用性Git,包括:创建Git使用者、创建Git仓库、修改Git工作空间。

1)创建Git使用者

之后创建git使用者的“家”:

采用su – git切换到git使用者,预备后续操作。

2)创建Git仓库

之后,他们切换到了git使用者,创建blog的文档夹:

用同样的方法,创建imageHost的文档夹:

3)创建Git仓库

创建的是裸仓库,没工作空间。所以他们须要指向工作空间到上文创建的网站文档夹:

追加文本如下,注意替换–work-tree和–git-dir地址为你的地址:

最后,添加执行权限:

同理,imageHost图床文档夹也一样:

追加文本:

添加执行权限:

到此,伺服器上的操作,基本完成。接下来是邻近地区操作。

部署Hexo

部署Hexo很简单,总的有三步:初始化Hexo、运行Hexo、打包推送到伺服器。

1)初始化Hexo

具体来说,确保邻近地区已经加装Node.js:

之后全局加装Hexo:

手把手教你搭建Hexo博客

之后,创建两个文档夹,并采用hexo init进行初始化:

手把手教你搭建Hexo博客

2)运行Hexo

运行Hexo很简单,只须要:

你可能会收到Node.js的版问题警告,不过影响不大。假如提示hexo s找不到,能采用npm install hexo-server –save进行加装,再运行hexo s即可。

之后,他们采用浏览器即可访问他们的hexo:

手把手教你搭建Hexo博客

具体的Hexo网志如何书写,这里不过多说。接下来,他们看一看如何部署。

3)打包推送到伺服器

他们把Hexo打包并部署到伺服器。具体来说在hexo blog目录内加装推送插件:

手把手教你搭建Hexo博客

打开hexo blog目录下的_config.yml文档,编辑(可以用记事本、Xcode、HBuilderX),deploy后,类型填git,然后补上其他文本:

手把手教你搭建Hexo博客

之后,进行public文档夹聚合和推送:

手把手教你搭建Hexo博客

查看文档夹:

手把手教你搭建Hexo博客

浏览器访问看一看:

手把手教你搭建Hexo博客

部署图床

部署图床也很简单,总的有三步:创建邻近地区图床仓库、添加图片、推送到伺服器。

1)创建邻近地区图床仓库

创建的方法很简单,用过Git的使用者应该都比较熟悉。假如你没用过,看了下面的文本也能轻易理解。

手把手教你搭建Hexo博客

2)添加图片

打开文档夹,之后往里面丢图片即可:

手把手教你搭建Hexo博客

3)推送到伺服器

最后,推送到伺服器,也是基本的git操作:

当然,也就第一次须要git push –set-upstream origin main指定,后续间接git push就能了:

手把手教你搭建Hexo博客

假如出现推送错误,出现remote: fatal: You are on a branch yet to be born问题,一般是远程仓库(伺服器上的裸仓库)上的仓库不一样。有个个最简单的方法,修改伺服器上裸仓库的post-receive,添加:

手把手教你搭建Hexo博客

之后重新邻近地区git pull即可:

手把手教你搭建Hexo博客

到宝塔看一看伺服器上的图片:

手把手教你搭建Hexo博客

Nginx反代

刚刚他们其实只创建了两个文档夹,但是创建了两个仓库。怎么融合在一起呢?方法许多,你能用搜索引擎去解析两个网站文档夹。

但是假如你只有两个搜索引擎,能采用Nginx反向代理图床文档夹为网志文档夹的子文档夹。举个范例,他们网志根目录下的/imagehost文档夹,我想专门用于代理图床文档夹,只须要打开Nginx的设置,设置反向代理即可:

手把手教你搭建Hexo博客

之后,任何/imagehost开头的文档,就会被Nginx代理到/www/wwwroot/myHexo/imageHost文档夹下去查找。举个范例,比如说他们想拿到0.jpg这张图片:

手把手教你搭建Hexo博客

只须要在网志搜索引擎下,加上/imagehost前缀即可访问:

这样,在写网志的时候,就方便了。

最终效果:加上一点点的美化和一点点的该文输出,并且部署到Lighthouse是我的网志:

手把手教你搭建Hexo博客

Q&A

1)如何备份网站

备份Hexo网志很简单,在Hexo文档夹内:

排除node_modules、public文档夹打包压缩即可。在新的笔记本电脑上,解压并hexo g -d即可重新打包并部署到伺服器。备份图床就更简单了。实际上你只须要下载伺服器上的图床文档夹即可。或者说打包邻近地区的图床文档夹。因为这两个相当于是个同步盘。

2)Lighthouse跑的动Hexo么

完全能,Lighthouse就算采用最低配置的版,也能跑Hexo。但是,假如你想拿Lighthouse构筑Wordpress,提议采用2C 4G实用性以上的版;否则提议资料库另外构筑。

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务