关于hexo:hexo-多语言站点改造

<article class=“article fmt article-content”><p>工作中搜寻和查阅的文档以英文居多,于是便想着也革新一下本人博客。反对多语言的同时,顺便也算是给新的一年开一个头。</p><p></p><h2>指标</h2><p>这次革新的指标有两个:</p><ol><li>全局多语言(中-英)的反对。</li><li>不同语言之间能够相互切换。</li></ol><h2>摸索</h2><p>hexo 以及之前用的 NexT 主题尽管有 i18n 的反对,但都是对导航、菜单等偏固定内容的反对,并没有全局反对。</p><p>在网上搜寻相干文章后,大抵有如下 3 种解决方案:</p><table><thead><tr><th>序号</th><th>计划</th><th>长处</th><th>毛病</th></tr></thead><tbody><tr><td>1</td><td>在 <code>_post</code> 下新建 <code>en</code> 文件夹寄存英文文章。</td><td>简单明了,无额定改变。</td><td>博客首页会展现所有文章。如果须要按语言显示需另外做开发。</td></tr><tr><td>2</td><td>应用 hexo-generator-i18n 插件。</td><td>简略,装置 + 配置即可应用。</td><td>1. 插件较长时间没有更新.<br/> 2. 装置插件后还须要另做开发,如语言切换等。</td></tr><tr><td>3</td><td>创立两套网站寄存不同版本语言。</td><td>绝对简略,齐全独立。</td><td>两套网站局部配置和代码有冗余。</td></tr></tbody></table><p>思考到操作和保护(次要还是懒,不想本人再开发),还是决定采纳第 3 中计划。</p><p>同时在查找材料时发现了 Fluid 主题,感觉很难受便趁此机会一起降级。</p><h2>革新</h2><p>在新博客的文件夹下,通过 <code>hexo init</code> 别离创立两个语言的博客。目录的构造如下:</p><pre><code class=“shell”>.├── blog-cn├── blog-en└── scripts</code></pre><p>针对 Fluid 主题和多语言的配置能够参考:记一次 Hexo 博客迁徙与多语言站点革新。写的非常具体,循序渐进即可。</p><p>针对部署局部,参考:Hexo增加多语言反对「国际化i18n」。将部署流程汇总到了 <code>shell</code> 文件中,浏览起来能够略微轻松一些,也不便部署。</p><p>其本质就是在编译后的文件中多了一个 <code>en</code> 文件夹,寄存英文内容。因而能够通过 <code>https://{your-blog}/en</code> 来拜访。</p><pre><code class=“shell”>#!/bin/bash# Build CN blogcd blog-cn && pnpm run build# Build En blogcd ../blog-en && pnpm run buildcd ../blog-cnmkdir ./public/en &&mv ../blog-en/public/* ./public/en/pnpm run deploy</code></pre><h2>迁徙</h2><p>hexo 的迁徙一项是最轻松的事件。将 <code>source</code> 下须要的文件复制到新的中央即可。</p><h2>其余</h2><p>剩下的就只是翻译工作了,看看是否能够借助 Google 翻译或者 GPT 的力量了。</p><p>最初欢送来我更新过的博客游玩。</p></article> ...

February 12, 2024 · 1 min · jiezi

关于hexo:基于Hexo和Butterfly创建个人技术博客1-初始化博客站点您只需要知道Hexo框架的这些内容就足够了

专题概述本文是集体建站系列的第一篇文章,最终有多少篇文章笔者当初也说不好,因为是一边创立集体站,一边积淀这个过程。每一步都是实操后再总结文档,文档是以章为单位总结的,每一章都会有几篇文章,在发文前也都通过至多3次的纲要、文案的调整和校对,目标是为了尽量让您能看明确,内容包含但不限于教程、实操、最佳实际等,绝对系统化,不过真的十分消耗工夫。 本地环境要求:node、git,高级用户可选装nvm进行node治理;本文档面向:MacOS用户专题指标集体建站其实并不简略,但没啥技术门槛,看下Hexo和theme插件的文档,那么代码层面根本就能够无忧了(主题插件肯定要在建站之初选定,因为每个主题的应用办法都不一样,决定了网站的格调。前期更换主题须要批改很多配置),但要真正上线的话您还要理解,比方域名、云主机、备案、流量、平安、网站经营、老本管制等等常识。好在笔者这几年工作下来对上述常识多少还是有教训积攒的。 <font color=green size=4>本教程终极目标:</font>对Hexo和Butterfly主题的技术解说只是初始指标,除hexo和butterlfy外还会波及其它很多内容,包含经营和老本管制等常识,这将有助于帮您构建本人的技术体系提供参考思路(不局限于集体建设畛域)。So,如果您能把握本系列教程的常识,至多能丰盛您集体的技术图谱,也会从新扫视技术倒退路线以及对将来的布局,而后者是笔者最心愿看到的。因为本专题是以建站这个事来发展的,hexo等框架的存技术应用只是做成这个事的充沛但不必要条件。面向对象本教程即能够做为教程零碎的学习也能够做为字典手册来查问应用。 <font color=green size=4>本教程的指标人群:</font>首先要说的一点就是常识的积攒没有捷径可走,全是无数个不眠夜和工夫堆进去的。但个体因为目标的不同,其抉择的过程和办法也不一样,所以笔者就目标和教程的用法做下简略总结: 如果您只是想理解此方面的内容,那么建议您只须要详读建站流程相干的章节理解下建站的大至内容,而后再按趣味选读;如果您想零碎把握这方面的技能,但不做任何与商业化相干的事,建议您每个章节都实操下但不用每个章节都一点不落的操作,一是比拟耗时间,二是如果没有明确的目的性很难有所播种,因为本教程很多局部是围绕如何前期商业化经营开展的;如果您想打造集体技术品牌甚至实现商业化经营,那么我建议您按章节程序一字不落的实操下。但我还是要先泼盆冷水,要达到这一目标一点也不容易甚至可能会失败,单工夫上对于普通人可能须要1-2年的工夫甚至更长。建站只是其中一步,本系列教程虽不能带给您全部内容,但肯定能够带给您更多的思考以及抉择。但庆幸的是我集体认为这是值得的,因为这件事一旦胜利其带来的长尾效益和衍生空间是您无奈设想的,技术积攒和金钱收益只是其中一部分。<font color=green size=4>本章指标:</font>把握hexo的装置、命令应用,并能在本地胜利运行网站;也可参考基于hexo和aws云搭建集体博客,0根底0费用,有点豪横(2W字超具体图文教程)一文中形容公布博客到github或云主机上。一、搭建博客站点暂定咱们的博客的源码所在的根目录的文件夹名为blog,这个文件夹不须要手工创立,在hexo init则初始化时会主动生成,如下; $npm install hexo-cli -g$hexo init blog # 创立博客源码目录$cd blog$npm install # npm install hexo@7.0.0-rc1 装置指定的版本#装置butterfly主题,举荐下载源码包。$npm install hexo-theme-butterfly$npm install hexo-renderer-pug hexo-renderer-stylus --save批改_config.yml文件中的theme属性值为bufferfly在_config.yml文件所在的目录下创立一个名为_config.buffterlfy.yml的主题文件$ npm install hexo-server --save #选装独自的服务器模块#服务器启动$hexo server --debug #--debug参数也能够不写bufferfly倡议用源码装置: 1、下载源码:github bufferfly2、拷贝源码包中 buffery主题一节中代码示例中的文件 到/themes/bufferfly/上面。 1、hexo源码2、hexo landspace theme源码 ,装置形式同butterfly。 npm view hexo //查看信息npm view hexo versions //查看所有版本npm info hexo //查看依赖信息project阐明上述操作实现后,咱们的我的项目代码大略如下图所示: .├── _config.butterfly.yml├── _config.yml├── package.json├── package-lock.json #锁定装置时的包的版本号├── scaffolds #Hexo的模板是指在新建的文章文件中默认填充的内容。├── source| ├── _drafts| └── _posts└── themes └── bufferflypackage-lock.json:文件锁定版本号,当执行npm install的时候,node不会自动更新package.json文件中的模块,不便多人开发环境的对立;source:资源文件夹,于用寄存用户资源的中央。除 posts 文件夹之外,结尾命名为 (下划线)的文件 / 文件夹和暗藏的文件将会被疏忽。Markdown 和 HTML 文件会被解析并放到 public 文件夹,而其余文件会被拷贝过来。theme配置_config.butterfly.yml是主题配置文件,和主配置文件_config.yml都放在根目录下,主题配置文件的内容优先级会高于主配置文件,如果是下载的butterfly主题源码,那么目录构造如下,这些内容是须要拷贝到/themes/butterfly/文件夹下的: ...

June 16, 2023 · 3 min · jiezi

关于hexo:Hexo-个人博客搭建

hexo+Github Pages博客搭建全过程申明: 演示环境为Ubuntu 16.04,记录时间为16~17年。创立仓库[!NOTE] 目标是应用GitHub Pages来部署咱们的博客。 注册GitHub账号,官网地址:https://github.com/ 登录后如下图,点击创立仓库 填写仓库信息即可 仓库名称必须是用户名.github.io,比方我的用户名是damit5,那么我就填damit5.github.io 配置SSH[!NOTE] 目标是为了不便上传内容到github中。 设置user name 和 emailgit config --global user.name "你的GitHub用户名"git config --global user.email "你的GitHub注册邮箱"生成ssh密钥ssh-keygen -t rsa -C "你的GitHub注册邮箱"个别这种状况下是不须要明码的,所以始终回车就好胜利后,用户文件夹下就会有一个新的文件夹 .ssh,外面就有刚刚创立的ssh密钥文件id_rsa和id_rsa_pub [!NOTE] 注:id_rsa文件是私钥,要妥善保存,id_rsa.pub是公钥文件。 增加公钥到GitHub点击用户头像,而后再点击Settings选项 在用户设置栏,点击SSH and GPG keys选项,而后点击New SSH key 将 id_rsa.pub 的内容复制到Key 文本框中,再点击Add SSH key 测试SSHssh -T git@github.com接下来会显示出上面的确认信息 The authenticity of host 'github.com (192.30.255.112)' can't be established.RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.Are you sure you want to continue connecting (yes/no)? 输出yes而后回车 ...

May 14, 2023 · 1 min · jiezi

关于hexo:给你的hexo添加live2D看板娘

live2D《Live2D》是一种利用于电子游戏的绘图渲染技术,技术由日本Cybernoids公司开发。通过一系列的间断图像和人物建模来生成一种相似三维模型的二维图像,对于以动画格调为主的冒险游戏来说十分有用 live2d官网,能够思考本人制作本人喜爱的装置依赖npm install --save hexo-helper-live2d这个时候是没有模型文件的,所以下一步是下载模型文件 装置模型去下载一个本人喜爱的模型,将其放入node_modules目录下,或者间接用npm npm install live2d-widget-model-z16而后在_config.yml文件里增加: live2d: enable: true # 举荐应用 jsdelivr 的 CDN 来加载 scriptFrom: local pluginRootPath: live2dw/ pluginJsPath: lib/ pluginModelPath: assets/ tagMode: false debug: false model: # 举荐应用 CDN 来加载模型 use: live2d-widget-model-z16 display: position: right width: 150 height: 300 mobile: show: true react: opacity: 0.7 dialog: # # 是否开启对话框 enable: true # # 是否应用一言 hitokoto: true也能够用CDN ### 举荐应用 jsdelivr 的 CDN 来加载 scriptFrom: jsdelivr pluginRootPath: live2dw/ pluginJsPath: lib/ pluginModelPath: assets/ tagMode: false debug: false model: # 举荐应用 CDN 来加载模型 use: https://cdn.jsdelivr.net/npm/live2d-widget-model-wanko@1.0.5/assets/wanko.model.json最初运行网站就能够了 ...

August 24, 2022 · 1 min · jiezi

关于hexo:serverless部署hexo博客免费托管在腾讯云上

如果图片无奈加载,可到 我的博客 中,查看残缺文章 装置serverless插件npm install -g serverless 创立存储桶首先须要注册登陆腾讯云进入对象存储控制台创立存储桶 名称自定义地区轻易选拜访权限抉择 私有读公有写始终下一步到创立胜利 部署在hexo我的项目根目录下新建 serverless.yml # serverless.ymlcomponent: website # (必填) 援用 component 的名称,以后用到的是 tencent-website 组件name: hexoComponent # (必填) 该 website 组件创立的实例名称app: websiteApp # (可选) 该 website 利用名称stage: dev # (可选) 用于辨别环境信息,默认值是 devinputs: src: src: ./public # Upload static files generated by HEXO index: index.html # dist: ./dist # hook: npm run build # websitePath: ./ region: ap-guangzhou # 创立存储桶时选的地区 bucketName: my-bucket # 创立存储桶写的名称 protocol: https输出命令serverless deploy ...

July 29, 2022 · 1 min · jiezi

关于hexo:Hexo-Obsidian-Git-完美的博客部署与编辑方案

1. 前言在之前的文章《Hexo 疾速搭建指南》中,重点解说了如何搭建以及部署博客。然而在前期写博客的过程中,有可能遇到很多麻烦,比方: 我不想手动保护文章的 Categorys,我想以文件目录的模式治理文章分类VSCode 编写 Markdown 文件不爽,我想用其余的编辑器来写 Markdownhexo new 指令生成的模板太拉了,我不想用我想把我的 markdown 文档同步到云平台上,不便我的其余设施即时查看那么这篇文章就会教你应用最舒服的姿态来前期保护你的博客,缩小心智累赘与解决各种不爽的中央。 2. 更好的文章治理计划2.1 文章以目录分类当咱们写好一篇文章后,依照 hexo 的默认配置,咱们须要将其放在 source/_post 目录下,等工夫长了之后,_post 目录下的文章就会变得横七竖八,无奈让咱们疾速的 review 到一篇文章。 那么最好的解决方案就是咱们在创立文章的时候以 文章分类 作为文件夹创立咱们的文章,比方: .└── source └── _post ├── 前端 │   ├── Javascript │   │   └── Javascript原型链机制.md │   └── 浏览器 │   └── 浏览器性能优化.md └── 后盾 ├── GoLang │   └── go语言简介.md └── Java └── Spring MVC 疾速入门.md2.2 依据文件目录主动生成 categories 信息尽管咱们把文章放的东倒西歪了,然而每个文章里的 categorys 字段还是要咱们手动本人保护的,比方在 source/_post/前端/Javascript/Javascript原型链机制.md 文件中,咱们要通过手写 categories 来让 hexo 晓得这篇文章被放在 前端-Javascript 分类下: ...

July 14, 2022 · 3 min · jiezi

关于hexo:征文投稿丨基于轻量应用服务器搭建Hexo个人博客

本文来自于轻量应用服务器征文活动用户投稿,已取得作者(昵称海拥,阿里云开发者社区专家博主)受权公布。 去年(2021年)七月份我开始本人第一次搭建博客,从网上找了一些教程,理解到大略须要的几个步骤,须要用到服务器、域名而后再进行域名备案等 。阿里云的服务器在公众口碑中始终是最好的,于是我就进了阿里云官网。阿里云为新用户提供了很大的优惠,最初我选的是轻量应用服务器,99块一年,2核2GB,5Mbps限峰值带宽,对于我来说曾经足够了。 刚开始用的时候我选的 Wordpress 利用镜像,Windows零碎镜像,依据利用搭建中的几个步骤实现了根本的配置。博客的主题我换了很多种,外面简直所有的主题我都试了一遍,但其实还是没有令我特地称心的。起初在敌人的帮忙下,最近我试了一下用Hexo 框架搭建,并且应用了butterfly的主题,最终的成果是一个二次元格调的,我很喜爱。 接下来重点介绍基于轻量应用服务器搭建Hexo博客的具体步骤及butterfly主题的装置,一起来看看吧。 应用轻量应用服务器搭建Hexo本次集体博客大抵的搭建步骤如下:• 配置轻量应用服务器• 服务端装置 Node.js• 服务端装置 Git• 服务端装置 Nginx• 客户端装置 Hexo• 客户端配置免密登录• 服务端创立 Git 仓库• Hexo 主题配置 看起来步骤还有点多,但每一小步都很简略,非常容易操作上手。 1.配置轻量应用服务器阿里云的轻量应用服务器提供了十分多样化的镜像抉择,来满足不同用户的需要,十分不便。搭建的第一步,将零碎镜像重置为CentOS7.9 零碎,而后重置实例明码、配置平安组策略;配置好之后,复制一下公网IP,就能够开始建站了。 2.服务端装置 Node.js① 在本地客户端应用 ssh 连贯阿里云服务器公网IP: ssh root@公网IP 注:公网IP能够登录控制台后,点击详情,在“服务器信息”中查看,如下图: ② 一键式装置配置 Nodejs: cd /tmp && wget https://nodejs.org/dist/v17.5.0/node-v17.5.0-linux-x64.tar.xztar xf node-v17.5.0-linux-x64.tar.xzmv node-v17.5.0-linux-x64 /usr/local/nodeln -s /usr/local/node/bin/node /bin/nodeln -s /usr/local/node/bin/npm /bin/npmecho 'export PATH=/usr/local/node/bin:$PATH' >> /etc/profilesource /etc/profilenode -vnpm -v3.服务端装置 Git一键式装置 Git代码如下: yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMakercd /tmp && wget https://www.kernel.org/pub/software/scm/git/git-2.9.5.tar.gztar xf git-2.9.5.tar.gzcd git-2.9.5 && make all prefix=/usr/local/gitmake install prefix=/usr/local/gitecho 'export PATH=$PATH:/usr/local/git/bin' >> /etc/bashrcsource /etc/bashrcgit versiongit config --global user.name "你的账号"git config --global user.email "你的邮箱"执行完就装置胜利了,要留神的是客户端也须要装置一下 Git,图形化始终下一步就行。 ...

June 2, 2022 · 2 min · jiezi

关于hexo:手把手教你搭建博客

因为 github 拜访不太稳固,感觉将博客迁徙到 AWS 上。能够借助 AWS 存储的性能。 为什么抉择 hexo生成页面速度快反对 markdown一键部署超强的扩展性海量的插件创立博客# 装置npm install hexo-cli -g# 创立博客hexo init myblogcd myblognpm install# 本地运行hexo server这短短的几步,博客便创立胜利了。 装置部署工具# 装置npm install hexo-deployer-aws-s3 --save-dev# 将部署配置放入 _config.ymldeploy: type: aws-s3 # 插件的名字 region: us-east-1 # 存储桶所在区域 bucket: my-bucket # 存储桶名字AWS 使用指南注册地址:https://aws.amazon.com/cn/fre...实操文档:https://aws.amazon.com/cn/get...AWS 存储介绍S3 是一种对象存储服务,提供行业当先的可扩展性、数据可用性、安全性和性能。首年应用会有 5 GB 的收费存储空空间。 接下来,就须要咱们在 aws 上创立存储。 创立存储桶 保留后 此时,更新 deploy 配置 # 将部署配置放入 _config.ymldeploy: type: aws-s3 # 插件的名字 region: ap-northeast-1 # 存储桶所在区域 bucket: robinblog # 存储桶名字凭证凭证的作用是为了取得 aws s3 存储的管制权限,便于部署动态网站。进入官网文档,须要生成凭证、配置策略、配置凭证。 ...

March 25, 2022 · 1 min · jiezi

关于hexo:HexoAnatolo主题添加gitalk评论系统

一开始筹备应用gitment作为评论零碎,然而搭完发现曾经不可用,随后找到了差不多的gitalkgitalk曾经有很多主题集成,然而很遗憾我应用的Anatolo还没有,尝试了下还算简略,当初把大略步骤写一下 相干地址Anatolo主题:https://github.com/Ben02/hexo...gitalk评论:https://github.com/gitalk/gitalkmd5:https://github.com/blueimp/Ja... (issue label name 不容许超过50字符,所以应用md5生成id) 应用筹备工作抉择一个公共github存储库(已存在或创立一个新的github存储库)用于存储评论创立GitHub Application,Authorization callback URL填写博客地址(点此申请)生成Client Id及Client Secret,复制保留 主题更改定位到Anatolo主题文件夹内,关上{Anatolo Path}/layout/partial/comments.pug文件最下方增加此段代码 if theme.gitalk if theme.gitalk.enable == true a#comments #vcomments(style="margin:0 30px;") link(rel='stylesheet' href='https://cdn.jsdelivr.net/npm/gitalk@1/dist/gitalk.css') script(src='https://cdn.jsdelivr.net/npm/gitalk@1/dist/gitalk.min.js') script(src='https://cdn.jsdelivr.net/npm/blueimp-md5@2.19.0/js/md5.min.js') script. var gitalk = new Gitalk({ clientID: '#{theme.gitalk.client_id}', clientSecret: '#{theme.gitalk.client_secret}', owner: '#{theme.gitalk.owner}', repo: '#{theme.gitalk.repo}', admin: ['#{theme.gitalk.admin}'], id: md5(location.pathname), // Ensure uniqueness and length less than 50 distractionFreeMode: false // Facebook-like distraction free mode }) gitalk.render('vcomments')增加配置在主题文件夹下_config.yml或根目录下_config.anatolo.yml增加gitalk配置 gitalk: enable: true owner: #owner repo: #repo name admin: #admin name client_id: #client_id client_secret: #client_secret成果 ...

February 18, 2022 · 1 min · jiezi

关于hexo:在-Windows-上快速安装-Hexo-安装-Git

前言本文未经容许,禁止转载! 视频教程正在制作,期待更新。 本文首发于 YFun's Blog 文章目录装置 Git装置 Node.js更多文章期待更新...下载返回 Git 官网 (https://git-scm.com). 点击页面中的 Download For Windows 下载 Windows 版本。 装置双击运行安装文件。 点击 Next,批准协定。 批改程序安装地位,点击 Next(间接装在 C 盘也不是不行)。 组件选项,可选桌面快捷键、右键菜单、LFS 反对、主动查看更新等。 点击 Next 进入下一步。 开始菜单文件夹名,放弃默认就能够,点击 Next。 默认编辑器,放弃 Vim 就能够,点击 Next。 环境变量,抉择第 2 个,点击 Next。 如果抉择第 1 个,则只能在 Git Bash 中应用,可能会呈现问题 剩下的都能够放弃默认,一路 Next,而后点击 Install。 期待装置结束。 测试在文件夹处右击,点击 Git Bash Here 进入 Git Bash。 (或是在开始菜单中找到 Git Bash) 输出 git --version 查看版本,正确输入版本信息即代表装置胜利。 ...

February 9, 2022 · 1 min · jiezi

关于hexo:hexo指南hexo配置ER图流程图时序图插件

偏技术的文章有时会用到各种图形,一般来说能够做好图而后截图放到文章中就好了,尽管但图片自身也很小,但存一大堆图片占用空间总感觉不是很好。 mermaidmermaid官方网站 mermaid反对很多种图形的渲染,用它是个不错个抉择。它能够渲染出多种简单的图形。例如上面这个。 sequenceDiagram par Alice to Bob Alice->>Bob: Go help John and Alice to John Alice->>John: I want this done today par John to Charlie John->>Charlie: Can we do this today? and John to Diana John->>Diana: Can you help us today? end end而绘制它也仅仅须要几行代码 sequenceDiagram par Alice to Bob Alice->>Bob: Go help John and Alice to John Alice->>John: I want this done today par John to Charlie John->>Charlie: Can we do this today? and John to Diana John->>Diana: Can you help us today? end end装置装置步骤很简略,只须要三步 ...

January 14, 2022 · 1 min · jiezi

关于hexo:如何使用-4everland-hexo-搭建去中心化博客

前言:兴许你当初没有本人的博客,但想在有必要的时候展现自我,记录身边的生存。兴许你曾经搭建了本人的博客,但搭建在中心化服务器上常常拜访很慢,容易宕机。那么4everland可能是你的不错抉择,不必花钱,访问速度快还送域名。本文就是为了帮忙想领有本人博客的新敌人搭建一套去中心化的博客或者帮原博主构建一个备站。 介绍:4everland: 4everland提供了一个云平台,能够优化整个我的项目开发和部署体验,它有很弱小的性能值得去摸索,集体应用是收费的,提供了域名拜访,应用方便快捷。hexo: Hexo 是一个基于 nodejs 的动态博客网站生成器,通过应用脚手架装置后,命令操作简略,间接开箱应用,反对丰盛的主题,反对高度的自定义化,次要应用 markdown 语法。你能够自行开发插件,优化你的博客。 搭建在搭建博客之前,咱们须要一些筹备工作,首先是 4everland 平台的账号,其次是装置 nodejs 以及 hexo-cli 脚手架。先找到官网,抉择Hosting连贯你的GitHub账户创立一个新我的项目装置 hexo-cli在装置 hexo-cli 前,须要保障电脑装置了 nodejs。 nodejs 须要在node 官网下载,装置好 nodejs 后,也会相应的装置上 npm,接下来就能够装置 hexo-cli 了。装置命令:npm install hexo-cli -g检测是否装置胜利。4everland + hexo 创立我的项目4everland平台中反对抉择多种我的项目模版,包含但不限于 Next.js,Nuxt.js,Hexo,Angular 等多种类型。因为目前我的项目方没有提供官网的模板,须要自行去github导入git或者将本地git上传到github再通过4EVERLAND部署。上面介绍如何将本地代码放到github上。在确认曾经装置hexo与Git的前提下初始化hexo$ hexo init Blog上述命令会创立一个名为Blog的文件夹,博客初始化的所有内容都将寄存在这个文件夹中接下来切换到Blog目录下$ cd Blog$ npm install执行如下命令,生成动态页面$ hexo generate(或者间接hexo g)装置hexo-server包$ npm install hexo-server –save浏览器输出http://localhost:4000,就能看到本地hexo的helloworld页面如上,本地曾经能跑起来了这时,只有再github里创立一个我的项目再将本地代码克隆到git上根本的筹备工作就曾经实现了最初你只须要在4everland里登录github账户进行简略的部署就能够发现你的博客曾经完满的运行在IPFS去中心化网络上。

December 27, 2021 · 1 min · jiezi

关于hexo:十年老站长心声我为什么选择把-Hexo-网站迁移到-Webify

前 言我的这个博客站点大概始建于2010年以前,应用过 dlog、pjblog、zblog 等博客程序,也手动建设应用过纯动态 HTML 页面,大概2010年开始应用 WordPress。最近几年有感于 WordPress 过于臃肿简单,而我的目标只是想写点什么,给本人留下些记录,于是将网站迁徙到了更加简洁的hexo。 在本地电脑搭建好环境,配置好 hexo 站点。每次在网易云笔记里写好 markdown 格局的文章,而后复制到本地电脑 hexo 的对应目录下,手动生成新的网站动态页面。最初再手动上传到服务器空间里,这样就实现了网站的更新。 Webify官网:https://webify.cloudbase.net/ 我的需要Hexo尽管简洁、疾速,但有几个问题始终困扰着我,甚至影响了写作的趣味和欲望。 第一,肯定要应用我装置配置了 hexo 的那台电脑,能力公布生成新的动态页面,而后能力更新到服务器。尽管也理解过一些方法,比方将 hexo 配置文件复制装置到不同电脑,或者上传到 github,通过 github 更新,但究竟不能很好解决网站更新,文章公布的问题。 第二个问题,其实是第一个问题的延长。每次公布新文章,文章写好当前,还须要复制到 hexo 目录下,手动生成动态页面,而后上传到网站服务器,这个过程太过繁琐。当然也去理解过解决办法,比方应用 hexo-admin 插件、给 hexo 增加后盾治理,把 hexo 部署到服务器上,通过 admin-hexo 在线更新文章。然而这些都背离了我当初应用 hexo 的初心---简洁,疾速。如果要这样折腾,为何不应用 WordPress 等性能更弱小的博客程序呢? 在折腾的过程中,在 hexo 官网上看见了一篇技术文章,介绍如何将 hexo 部署到GitHub Pages,十分合乎我的需要,惟一的问题是,部署过程中须要借助 Travis CI 这个第三方平台,简略的事件又变得复杂了。最初我甚至动了想把 hexo 转换成 jekyll 念头,因为 hexo 和 jekyll 构造根本一样,齐全反对.md的文章格局,更重要的是 GitHub Pages 原生的反对 jekyll,简直不须要任何设置。Github 尽管在国内很多中央拜访不稳固,然而套上 cdn 当前能够解决这个问题。 我开始着手将 hexo 迁徙到 GitHub Pages 上,应用 jekyll 部署。然而不久发现了一个大问题,GitHub Pages 不反对 jekyll 插件。没错,简略的借助 jekyll 插件实现的比方翻页,搜寻等性能,在 GitHub Pages 简直实现不了,这样就很失望了。于是所有再次停下来。 ...

November 11, 2021 · 1 min · jiezi

关于hexo:CodingHexo博客搭建教程

昨天写的Github+Hexo搭建集体博客,局部人在应用过程中,发现拜访Github时快时慢,具体起因大家懂的,所以明天给大家出一个Coding+Hexo的组合教程,这两套计划比起来呢,各有千秋,其中Github上手难度较高,但配置却很灵便,例如你的博客须要绑定域名,只须要在我的项目根目录建CNAME即可,但Coding如果要绑定本人的域名,则须要先在腾讯云进行域名备案的,绝对能繁琐一些,Coding也有长处,对于国内用户来说,服务很稳固,Coding不仅反对Hexo,同时也反对其余类型博客的模板创立,例如Jekyll、WordPress等。 大家平时挂个动态企业站都能够应用Coding,Coding在被腾讯收买后,局部性能须要跟腾讯云联合应用,上面开始咱们的教程,大家有什么问题能够留言,我看到后会第一工夫进行回复。 Coding+Hexo 拜访coding.net,注册账号,登录。创立新的我的项目,抉择全功能DevOps我的项目。找到网站托管性能,开始进行腾讯云受权,这里须要留神,在腾讯云须要进行实名制。抉择新建网站。点击动态网站,勾选Hexo,节点倡议大家选国内。 期待部署。 本地拉取代码,找到仓库地址,应用Git命令进行拉取,如果没有Git,通过Git Windows下载。git clone https://e.coding.net/xxx/xxx/xxx.git dir在Hexo目录下,装置依赖,并创立一篇新的文章。 npm install hexo new 'this is new page'上传代码。git add . git commit -m '提交信息'git push期待部署,部署实现后拜访。 自定义域名,须要先进行域名备案。

November 10, 2021 · 1 min · jiezi

关于hexo:Hexo-静态博客指南建站教程下

本文最后公布于我的集体博客Bambrow's Blog,采纳 BY-NC-SA 许可协定,转载请注明出处。若有后续更新,将更新于原博客。欢送去我的博客浏览更多文章!本文具体记录一下本站的建设过程,以便查阅。对于具体的细节则不会做过多解释,次要展现步骤。这一篇次要讲述购买及绑定域名的相干操作。 购买域名当初咱们的站点曾经有模有样了,那就能够筹备为它绑定一个域名了。首先第一步就是购买域名。国内国外都有泛滥域名服务商,本着少受一些限度的准则,举荐从国外几个出名的服务商购买。在网上能够搜到许多域名商的介绍与购买指南,这里就不赘述了。 如果切实抉择艰难,能够去这里比拟一下各家的价格。很多域名商首年或者首次转移都有优惠,如果不想每年都折腾,肯定要记得比照一下续费价格,以及有没有暗藏费用。另外最好抉择有WHOIS隐衷爱护的域名商,以及在付费的时候不要错选成那些乌七八糟的套餐,只买域名即可。 绑定域名并增加CNAME这一步次要参考了两篇文章,别离讲了应用1和不应用2DNSPod的状况,你能够视状况而定。我这里参考的是第二篇,也就是GitHub官网的指南。 首先去你的GitHub用户名.github.io仓库中,点击Settings,在GitHub Pages的Custom domain下输出你买好的域名,点击Save保留。 此时你会发现上面的Enforce HTTPS被勾销勾选,为了将其再次选中,须要以下的步骤。 首先配置CNAME,在source文件夹下建设一个新文件叫做CNAME(不要带任何后缀),将你买好的域名输出进去。随后向GitHub提交这次批改。 随后,关上你的域名商网站,为你的域名配置DNS。不同的域名商可能有不太一样的步骤,你能够搜寻你的域名商 + connect to github pages来找到教程。在个别状况下,你须要设置4个A记录与1个CNAME记录,A记录指向上面四个IP地址: 185.199.108.153185.199.109.153185.199.110.153185.199.111.153CNAME记录则设置为www CNAME 你的GitHub用户名.github.io。详情能够参看教程里的设置apex域局部。 随后刷新GitHub的设置页,看是否能够点选Enforce HTTPS。有时候须要等一段时间才能够。你也能够在Terminal测试一下DNS是否配置正确(可能也须要等一段时间才会失效): $ dig bambrow.com +noall +answer; <<>> DiG 9.10.6 <<>> bambrow.com +noall +answer;; global options: +cmdbambrow.com. 194 IN A 185.199.109.153bambrow.com. 194 IN A 185.199.111.153bambrow.com. 194 IN A 185.199.110.153bambrow.com. 194 IN A 185.199.108.153也能够在dig命令的域名前加上www看一下CNAME记录是否失效: $ dig www.bambrow.com +noall +answer; <<>> DiG 9.10.6 <<>> www.bambrow.com +noall +answer;; global options: +cmdwww.bambrow.com. 299 IN CNAME bambrow.github.io.bambrow.github.io. 3599 IN A 185.199.109.153bambrow.github.io. 3599 IN A 185.199.108.153bambrow.github.io. 3599 IN A 185.199.111.153bambrow.github.io. 3599 IN A 185.199.110.153其余设置把_config.yml的url批改为你的新域名。如果你配置了LeanCloud,在利用中点击设置,点击平安核心,在Web平安域名把你的新域名加进去。当初基本上就功败垂成了! ...

October 14, 2021 · 1 min · jiezi

关于hexo:HexoGitHub搭建个人博客

软件装置进入node.js官网下载安装 https://nodejs.org/en/ 关上cmd命令装置hexo npm install -g hexo-cli磁盘新建文件夹Hexo,关上cmd命令进入Hexo文件夹,进行hexo我的项目初始化 hexo init主题设置从github下载yilia主题,下载地址 https://github.com/litten/hex... 在hexo文件夹中新建themes/yiliawe,解压源码文件 批改Hexo文件夹中_config.yml文件,配置themel参数为yilia 生成公布批改Hexo文件夹中_config.yml文件,配置url参数为github page地址,倡议创立我的项目名字格局为 登录名.github.io 便于拜访及域名好看 关上cmd命令进入Hexo文件夹,运行生成命令,生成publish文件夹 hexo g 将publish中的内容全副拷贝至github我的项目clone的文件夹中,提交,间接拜访github page地址即可,公布有提早期待1-2分钟,新建文章在Hexo\source\_posts目录下新建markdown文件即可

October 9, 2021 · 1 min · jiezi

关于hexo:hexo配合github-action-自动构建多种形式

曾经应用HEXO失常构建GitHub页面 依据github action 给hexo配置主动部署github page 返回墨抒颖的集体网站查看污浊版1. 为仓库设置拜访密钥第一步学生成密钥,关上命令行并生成一组密钥 ssh-keygen -f github-deploy-key -C "HEXO CD"<!-- more --> 记得跳过明码啥的,这里连按三次回车就好 随后咱们会取得两个密钥文件,这两个等下会用到 2. 上传私钥github仓库地址 → Settings → Secrets → New secret 点击new repository secret新建仓库密钥名字 HEXO_DEPLOY_PRI内容 github-deploy-key文件内的所有内容 ⚠不要轻易走漏你的私钥⚠ 3. 上传公钥这里要分清你的仓库->page的模式,公钥被上传的仓库代表着要被部署的仓库,github不反对同一个(部署)公钥上传至多个仓库 不同仓库如果你的hexo代码和要部署的页面不在同一个仓库 比方你有一些临时不不便公开的内容,或者你是不想公开你的Hexo代码,只想将动态页面(文字,图片,网站主题所用的各个款式和脚本)部署到github page上其余的内容一律不蕴含此时你须要将公钥上传到你要部署的仓库中去 名字 `HEXO_DEPLOY_PUB内容 github-deploy-key.pub文件内的所有内容 记得勾选容许写入权限雷同仓库与上一步相似,只是上传到的仓库地址和你的代码仓库地址一样,不过你肯定要确定你有在配置中设置号正确的的分支 配置github action这里能够在github上点击 Action -> new workflow -> set up a workflow yourself轻易挑个模板将内容放进去,也能够在代码仓库中的.github/workflow增加一个hexo-ci.yml而后将以下内容放进该文件中。 记得把 blog_source_branch, username, username@email.address替换成你本人的 name: HEXO CIon: push: branches: - <blog_source_branch>jobs: build: runs-on: ubuntu-latest strategy: matrix: node-version: [14.x] steps: - uses: actions/checkout@v1 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v1 with: node-version: ${{ matrix.node-version }} - name: Configuration environment env: HEXO_DEPLOY_PRI: ${{secrets.HEXO_DEPLOY_PRI}} run: | mkdir -p ~/.ssh/ echo "$HEXO_DEPLOY_PRI" > ~/.ssh/id_rsa chmod 600 ~/.ssh/id_rsa ssh-keyscan github.com >> ~/.ssh/known_hosts git config --global user.name "<username>" git config --global user.email "<username@email.address>" - name: Install dependencies run: | npm i -g hexo-cli npm i - name: Deploy hexo run: | hexo clean && hexo generate && hexo deploy而后提交本次更改即可 ...

October 3, 2021 · 1 min · jiezi

关于hexo:hexo-升级540出现错误解决方法hexothemebutterfly

周末降级了下 hexo 到新版本,发现降级后,构建时呈现了一些谬误,以下是呈现的问题,及解决办法。 WARN Deprecated config detected: "external_link" with a Boolean value is deprecated. See https://hexo.io/docs/configur... for more details.批改 _config.yml 文件,将如下内容做调整。 external_link: true将下面的内容,批改为如下内容。 external_link: enable: true # Open external links in new tab field: site # Apply to the whole site exclude: ''err: TypeError: Cannot read property 'bind' of undefinederr: TypeError: Cannot read property 'bind' of undefined...Script load failed: %s themes/butterfly/scripts/filters/post_lazyload.js个别呈现相似谬误是因为降级hexo后,其余依赖未降级齐全,能够思考删除依赖,从新 install。 npm cache clean --forcerm -rf node_modulesrm package-lock.jsonnpm installhexo cleanhexo g能够参考git主题我的项目中的 issues-406 。 ...

September 27, 2021 · 1 min · jiezi

关于hexo:Hexo博客部署的终极解决办法云域名HttpsNginx镜像Docker部署

前言背景17年在大学用Hexo部署了第一个博客后,始终对Hexo集体博客进行革新降级。最开始是挂载在Github.io,后用Nginx迁徙至自有域名chanchun.net,在起初启用了GitHooks让Hexo构建产物间接SSH推送至云,再起初通过letsencrypt 降级了Https。自从Oracle Cloud凋谢了收费实例后,始终想把博客服务迁徙到收费的云上(无奈工作太忙,也怪搬瓦工服务器太难用)。那么与其从0开始迁徙,还不如把始终以来的积淀(Https、GitHooks、Nginx)也一起Docker化掉。不便当前持续迁徙,也给本人想折腾博客的人一个我认为最终极的解决方案。 你须要筹备什么云根底配置买一个Niubility的域名(举荐国外域名注册商)买一个Niubility云服务实例(举荐国外云服务商)把你的域名DNS解析至你的云公网IP(失效工夫预计从0-48小时不等)Hexo熟能生巧相熟Hexo的基本操作,相熟hexo init hexo new hexo clean hexo generate hexo server hexo deploy 等命令,并能启动Hexo服务构建出动态html,如果曾经搭建过了简略的博客零碎就更棒棒Docker理解一下Docker基本操作docker build docker run 等等一系列操作正题思路第一步,新建一个hexo-docker工程来构建Docker镜像(基于Nginx镜像),外面有且仅蕴含Dockerfile和初始Nginx配置。Dockerfile中形容了Githooks挂载地址,装置好了Certbot命令,并退出初始Nginx配置。 第二步,在云服务中间接Docker Run起结构好的镜像,进入镜像生成好letsencrypt证书,配置好近程SSH提供给Hexo Deploy。 第三步,配置好本地的Hexo代码,Hexo Deploy就能看到带绿锁的自有域名的博客了。 Show CodeDockerfile #基于Nginx镜像FROM nginx:latest#换国内的源,这里用网易源RUN sed -i 's#http://deb.debian.org#https://mirrors.163.com#g' /etc/apt/sources.listRUN sed -i 's#http://security.debian.org#https://mirrors.163.com#g' /etc/apt/sources.list#更新Docker中的apt-getRUN rm -Rf /var/lib/apt/lists/* && apt-get update#装置Git,挂载Githooks钩子,并将产物搁置在var/www/hexo中RUN apt-get install -y gitRUN git init --bare ~/blogs.gitRUN mkdir -p /var/www/hexoRUN echo "git --work-tree=/var/www/hexo --git-dir=/root/blogs.git checkout -f" >~/blogs.git/hooks/post-receiveRUN chmod a+x ~/blogs.git/hooks/post-receive#SSH初始化RUN apt-get install -y openssh-serverRUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -yRUN ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -yRUN ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key -y#装置CertbotRUN apt-get install -y certbotRUN apt-get install -y python3-certbot-nginx#初始化Nginx配置挂载,这里抉择间接笼罩所有配置ADD nginx/hexo.conf /etc/nginx/nginx.conf#裸露22 SSH#裸露80 HTTP#裸露443 HTTPSEXPOSE 22EXPOSE 80EXPOSE 443Nginx配置 ...

September 8, 2021 · 2 min · jiezi

关于hexo:Hexo博客使用腾讯云CDN加速及优化

原文地址:Hexo博客应用腾讯云CDN减速及优化 应用公共 CDN 加载局部资源批改主题(我的是NexT主题)配置文件,应用公共CDN加载局部CSS、JS文件,我抉择的是 jsDelivr 这个公共CDN平台; 提供其余平台的CDN: 七牛云又拍云BootCDNjsDelivr编辑 _config.yml: # Script Vendors.# Set a CDN address for the vendor you want to customize.# For example# jquery: https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js# Be aware that you should use the same version as internal ones to avoid potential problems.# Please use the https protocol of CDN files when you enable https on your site.vendors: # Internal path prefix. Please do not edit it. _internal: lib # Internal version: 2.1.3 jquery: //cdn.jsdelivr.net/jquery/2.1.3/jquery.min.js # Internal version: 2.1.5 # See: http://fancyapps.com/fancybox/ fancybox: //cdn.jsdelivr.net/fancybox/2.1.5/jquery.fancybox.pack.js fancybox_css: //cdn.jsdelivr.net/fancybox/2.1.5/jquery.fancybox.min.css # Internal version: 1.0.6 # See: https://github.com/ftlabs/fastclick fastclick: //cdn.jsdelivr.net/fastclick/1.0.6/fastclick.min.js # Internal version: 1.9.7 # See: https://github.com/tuupola/jquery_lazyload lazyload: //cdn.jsdelivr.net/jquery.lazyload/1.9.3/jquery.lazyload.min.js # Internal version: 1.2.1 # See: http://VelocityJS.org velocity: //cdn.jsdelivr.net/velocity/1.2.3/velocity.min.js # Internal version: 1.2.1 # See: http://VelocityJS.org velocity_ui: //cdn.jsdelivr.net/velocity/1.2.3/velocity.ui.min.js # Internal version: 0.7.9 # See: https://faisalman.github.io/ua-parser-js/ ua_parser: //cdn.jsdelivr.net/ua-parser.js/0.7.10/ua-parser.min.js # Internal version: 4.6.2 # See: http://fontawesome.io/ fontawesome: //maxcdn.bootstrapcdn.com/font-awesome/4.6.2/css/font-awesome.min.css # Internal version: 1 # https://www.algolia.com algolia_instant_js: algolia_instant_css: # Internal version: 1.0.2 # See: https://github.com/HubSpot/pace # Or use direct links below: # pace: //cdn.bootcss.com/pace/1.0.2/pace.min.js # pace_css: //cdn.bootcss.com/pace/1.0.2/themes/blue/pace-theme-flash.min.css pace: //cdn.bootcss.com/pace/1.0.2/pace.min.js pace_css: //cdn.bootcss.com/pace/1.0.2/themes/blue/pace-theme-flash.min.cssInternal version 阐明 NexT 外部应用的版本,通过测试的版本,咱们在公共CDN平台找到相应的版本并配置即可。NexT 官网也给出了阐明: 设置 「JavaScript 第三方库」 ...

July 8, 2021 · 2 min · jiezi

关于hexo:hexo个人网站优化探索

>> 原文链接 Contents## Contents## 前言 1. hexo 是什么?2. 何为优化?## 性能优化指标 1. 整体运行性能2. 网站可拜访性3. 网站是否利用了最佳实际策略 > 1) 应用 target="_blank" 的 <a> 链接如果没有申明 rel="noopener noreferrer" 存在平安危险。> 2) 查看浏览器端控制台是否有告警和谬误提醒,通过批示定位问题并解决。> 3) http 和 https 协定地址不混用> 4) 防止应用 AppCache> 5) 防止应用 document.write()> 6) 防止应用 mutation events> 7) 防止应用 Web SQL> 8) 防止加载过于宏大的 DOM 树> 9) 容许用户粘贴明码4. 网站搜索引擎优化SEO## 性能测试工具 lighthouse## 基于 hexo 框架的网站优化 1. 优化资源加载工夫 ➣ 应用 defer/async 异步下载 script 脚本资源➣ 应用 async 函数异步加载内部资源➣ 应用浏览器 onfocus 事件提早内部资源加载➣ 应用 preload/prefetch/preconnect 进行预加载优化➣ 应用 hexo 插件压缩代码文件和图片文件➣ 编写 hexo-img-lazyload 插件减少图片懒加载个性➣ 应用 IntersectionObserver API 懒加载其它资源➣ 应用 CDN 加载内部依赖脚本➣ 应用 Aplayer 代替 iframe 加载网易云音乐2. 优化界面运行性能 ...

May 6, 2021 · 9 min · jiezi

关于hexo:30分钟hexogithub快速搭建博客

前言有些同学可能感觉搭建博客是一件麻烦的事,既须要购买注册域名,又要购买配置服务器,还须要花老本去保护它们。没关系,即便这些你都没有,照样能够搭建本人的博客。你只须要筹备一个github账号。 本文概览如下: 好了,当初咱们正式应用hexo开始搭建博客吧~ 搭建博客装置hexonpm install -g hexo-cli初始化我的项目当初咱们曾经装置实现hexo了。接下来应用hexo初始化博客我的项目。 // 初始化生成blog我的项目hexo init blog配置主题hexo默认的主题是_landscape,当初咱们将主题配置为 keep。_ // 确认目录是否切换到了blog中,如果没有,则将目录切换到blog中cd blog// 装置keep主题npm install hexo-theme-keep// 批改_config.yml配置文件theme: keep// 预览网站hexo server在浏览器中关上http://localhost:4000,如图 增加文章新建当初,让咱们新建一篇博客 // 在blog我的项目中,执行如下命令:新建文章hexo new post 今日菜谱如图如示,新建的这篇博客以markdown的格局模式存储在了blog/source/_posts目录下。 编辑增加注释当初咱们关上【今日菜谱.md】,写下咱们的今日菜谱。 而后保留。刷新http://localhost:4000该链接。便能够看到看到咱们刚刚更新的最新文章了。如图 增加分类和标签接着咱们为文章增加分类和标签:关上【今日菜谱.md】,批改如下而后,关上终端别离执行如下命令。 hexo new page categorieshexo new page tags如下所示,hexo会在souce目录下,创立一个categories和tags文件夹,外面都蕴含一个index.md文件。当初咱们在浏览器中别离拜访如下地址,便能够别离看到咱们增加的分类和标签了。点击【美食】分类和【菜谱】标签便能够看到属于它们的文章。http://localhost:4000/categories/ http://localhost:4000/tags/ 为了能在主页间接拜访标签和分类,咱们能够对node_moduels/hexo-theme-keep/_config.yml配置文件做如下批改:再次刷新http://localhost:4000,如图 公布草稿如果你临时还不想要文章被公开拜访,能够先创立草稿。如下 hexo new draft 今日随想 刷新http://localhost:4000临时还无法访问咱们新创建的这篇文章,如果想要拜访这篇文章,咱们则须要公布该文章,执行如下命令 // 公布草稿hexo publish draft 今日随想当初这篇文章从_draft目录挪动到了_post目录。接着,咱们再刷新http://localhost:4000,便能够看到这篇文章了 部署博客当初咱们应用github page来部署咱们的博客。首先你须要有一个github账号,如果没有则须要先去注册一个。 新建仓库1.咱们关上 github,而后点击New repository按钮,如图 2.创立一个名为username .github.io的存储库,其中username是你在GitHub上的用户名3.胜利创立长仓库后,复制仓库的https地址,如图 部署// 确认目录是否切换到了blog中,如果没有,则将目录切换到blog中cd blog// 装置部署插件npm install hexo-deployer-git --save// 批改_config.yml配置文件// 将复制的地址,黏贴到如下repo字段中deploy: type: git repo: https://github.com/one-cheese/one-cheese.github.io.git branch: master // 部署网站到创立的仓库hexo deploy部署实现后,咱们刷新one-cheese.github.io仓库,本地生成的public中的动态资源全都上传到了该仓库中,如图。当初,拜访github page地址one-cheese.github.io,便能够看到部署胜利的博客了。 ...

May 5, 2021 · 1 min · jiezi

关于hexo:hexo搭建个人博客

筹备工作node npm(装置完node后就有了),若npm下载速度很慢,可装置cnpm node装置hexo-cli模块:npm install -g hexo-cli 开始搭建(windows平台)新建一个文件夹来搁置咱们的博客 在这个文件夹中关上cmd,输出相干的命令 hexo init:初始化创立博客 hexo s:关上博客(默认地址:http://localhost:4000) hexo n 'xxxx(文章名)':新建一篇博客文章 而后能够在此md文件中编写相干的内容 hexo g:生成一下文件 hexo clean:革除缓存(最好每次都革除一下) 把博客与github关联(推送到github上)这个的益处是能够不必去租一台云服务器去挂载,不必申请域名,对学生党很敌对 在github上创立一个仓库(留神仓库的命名格局必须为:用户名.github.io) 装置hexo-deployer-git:npm install -g hexo-deployer-git 编辑一下_config.yml文件 其中的repo为github仓库的SSH模式的地址(绝对于HTTPS的地址,这个地址能缩小一些不必要的谬误) 而后就能够把博客推送到github的仓库中了:hexo d(第一次输出的时候会提醒填写github的邮箱,明码,用户名等) 此时就能够在github仓库中看到所推送的博客文件 这个时候就能够在浏览器中输出方才命名的仓库名,就能够拜访到本人的博客啦 批改博客的主题hexo主题 去clone对应主题中的github仓库:git clone 对应主题仓库的地址 themes/xxx(寄存的主题名文件夹) 此时在themes文件夹下就能够看到方才clone的主题文件了 而后编辑_config.yml文件 theme那一项设置主题的文件夹名就好了 而后从新hexo g,hexo d,hexo clean就好了 可能博客没那么快有显示变动,能够多刷新几下网址 图片无奈显示的问题可参考网站:https://www.jianshu.com/p/ea78bdd0551f/ 结尾总的来说,当你批改了你的一些文件后,而后要推送到github近程库中 按程序输出的命令顺次为:(大部分状况下) hexo g hexo d hexo clean 最初,欢送来拜访我的集体博客哦,不定期更新!!!(https://taptaq.github.io/)心愿有用,谢谢!!!

April 10, 2021 · 1 min · jiezi

关于hexo:Hexo搭建个人博客

互联网时代的降临,信息的交换十分重要,优良的信息共享平台越来越多,其中集体博客就是一种十分受欢迎的形式。 这里介绍一下github+Hexo的形式,如果你也想搭建本人的集体博客,能够跟着教程疾速搭建一个属于本人的博客吧。 什么是Hexo?Hexo 是一个疾速、简洁且高效的博客框架。Hexo 应用 Markdown(或其余渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成动态网页。装置git关上 git官网 ,抉择本人电脑系统,而后选对应版本的安装包进行装置,而后一路进行傻瓜式的装置就好。如果装置胜利,桌面鼠标右键会有git的菜单 装置node.js如果是win10零碎, 关上node官网 间接下载最新的版本就行,别下错版本;如果是win7零碎,可能不反对最新版本, 点这下载 , 我都是下msi文件,间接装置完事 很不便。 装置实现当前,win+R关上cmd,输出node,有提醒就代表装置胜利了。 node.js版本不能低于12 装置Hexo(1)首先批改 npm 的装置源,如果不换装置的时候会十分慢,这里换成淘宝的npm镜像 $ npm config set registry https://registry.npm.taobao.org(2)装置Hexo $ npm install -g hexo-cli(3)定位到你本地的hexo文件夹(你本人创立的文件夹,任何门路任何名字都能够,最好别有中文), $ cd /d D:Hexo(4)创立主文件夹 (速度可能有点慢,如果换了源工夫还特地长,看看是不是github卡住了,挂一个代理试试),这个文件夹就是当前放代码的中央,倡议别乱放 $ hexo init bolg如果这一步卡住了,那就追加一个npm的装置源 $ npm --registry https://registry.npm.taobao.org info underscore(5)生成网站动态文件 (默认设置public文件夹) $ hexo g(6)启动服务 $ hexo s关上浏览器拜访 http://localhost:4000就能看到内容。默认的官网主题,可能会比拟丑 我的网站 https://www.jsonformatting.com/

January 29, 2021 · 1 min · jiezi

关于hexo:hexo-g-d-部署失败

报错信息:ChildProcess.<anonymous> hexo/node_modules/hexo-util/lib/spawn.js:37:17。 Coding仓库地址更改了导致 hexo g -d 忽然部署失败的起因剖析思路及解决。 前言前段时间忙于工作,有段时间没更新博客了,明天更新博客部署发现忽然部署失败了。 刚开始依据报错信息,在网上搜寻了一圈,各种答案都有,发现都不太精确,有的还说是git的版本问题要升到最新的git版本,为此我还降级了mac的零碎和git的版本。但发现并不能解决问题。 最初,冷静下来剖析报错的信息,忽然有了方向,最初定位到是Coding 仓库的地址扭转了导致的忽然部署失败,也验证了本人的猜测。 我的博客是同时部署在 Github 和 Coding 上的,Coding 忽然把仓库地址的规定改了,我也不晓得,太坑了.. 起因剖析思路剖析问题的思路如下: 解决办法上 Coding 仓库上查看批改后的仓库地址,把 Coding 的部署地址批改过去就好了。Coding部署地址的配置中央在:hexo 文件夹根目录的 _config.yml 文件里。如下: 批改之后保留配置问题,从新 hexo g -d 生成并部署就能够部署胜利了。问题解决。 至于博客源码仓库,我也是寄存在Coding上的(之前Github还不反对公有仓库),不过上传博客源码的时候不必批改仓库目录, git push 的时候会主动重定向为Coding批改后的仓库地址。

January 5, 2021 · 1 min · jiezi

关于hexo:Hexo部署GitHub-Pages

环境要求node.js > 10.13gitHexo默认你晓得Hexo的应用办法创立一个仓库(repository)进入GitHub,右上角点击 New repository将Repository name设置成 你的用户名.github.io ,留神,用户名必须跟你的截然不同复制GitHub连贯 git@github.com:Chenilove/Chenilove.github.io.git ,留神这里用HTTPS的话每次提交都要登录,举荐SSH在Hexo我的项目根目录下,编辑_config.yml文件,外面批改 # Deployment## Docs: https://hexo.io/docs/one-command-deploymentdeploy: - type: git # 提交类型git repo: git@github.com:Chenilove/Chenilove.github.io.git # 提交仓库地址 branch: main # 分支GitHub的默认分支是main Gitee的分支是master 能够填branch让hexo默认提交 message: message # 提交信息执行我的项目生成和部署命令 hexo ghexo d最初拜访 https://chenilove.github.io/ 就能够了issues执行hexo d每次都要登录是怎么回事?将_config.yml里的repo改成SSH(git@github.com)的链接就行了

December 15, 2020 · 1 min · jiezi

关于hexo:Mac下使用GitHubHexo搭建个人博客

开始之前须要在电脑上装置好Git和node.js,Mac上能够应用Homebrew命令行工具来装置Git和node.js 装置Homebrew在命令行工具输出以下命令,如果曾经装置过Homebrew能够疏忽 /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<!--more--> Homebrew 装置 node.jsbrew install node装置后能够应用命令来查看是否装置胜利查看node node -v输入后果: v12.14.1查看npm是否装置胜利,npm是node.js的包管理工具,用它来装置hexo npm -v输入后果: 6.13.4Homebrew 装置gitbrew install git查看git是否装置胜利 git -v输入后果: git version 2.24.3 (Apple Git-128)应用 npm 装置 hexosudo npm install -g hexo-cli装置实现后,在Desktop创立一个blog文件夹,在该文件夹下初始化咱们的博客 cd ~/Desktop && mkdir blog && cd blog在该文件件目录下执行博客初始化操作 # 会下载一些node.js的依赖文件hexo init初始化胜利后,在blog目录下执行预览操作 hexo s 当看到如下输入就能够预览咱们创立的博客了 INFO Validating configINFO Start processingINFO Hexo is running at http://localhost:4000 . Press Ctrl+C to stop. 预览成果如下 ...

December 3, 2020 · 1 min · jiezi

关于hexo:5-分钟快速搭建好你的个人站点

Hexo 是一个疾速、简洁且高效的博客框架,它应用 Markdown(或其余渲染引擎)解析文章,在几秒内,即可利用其泛滥的靓丽主题生成动态网页。正是这种简略、收费和可扩大的个性,Hexo 越来越受到程序员的青睐。这里咱们通过一个具体的教程,给大家演示一下如何在 5 分钟内搭建并部署好一个集体站点(博客)。 咱们应用 Hexo 框架来搭建博客站点,同时将站点托管到 LeanCloud 平台的「云引擎」之上,以实现最终的部署上线。闲言少叙,书归注释,咱们看看具体的步骤是什么样子的。 1. 装置依赖Hexo 依赖于 Node.js 和 Git,如果你的电脑中曾经装置了这两个必备程序,那么能够间接返回下一步。如果你的电脑中尚未装置所须要的程序,请参考官网指南实现装置。 2. 装置 Hexo依赖装置实现之后,能够应用 npm 装置 Hexo。 $ npm install -g hexo-cli3. 下载博客我的项目模版Hexo 命令行工具能够创立一个典型的博客我的项目,在该我的项目内 Hexo 通过应用特定的主题(theme)来对 Markdown 格局的文章内容进行渲染,从而生成动态文件。个别状况下,咱们只须要把这些动态文件部署到近程服务器上,即可取得一个可用站点。 LeanCloud 的云引擎提供了十分好用的网站托管性能,此外还提供欠缺的日志收集、监控等运维服务,这就要求一个站点在根本的动态内容之外还能反对多数动静的治理接口(在云引擎的我的项目框架中曾经实现)。 为此咱们在 Hexo 我的项目框架的根底上退出了大量 LeanCloud 云引擎须要的动静响应文件,做成了 hexo-engine 这样一个开源的我的项目模版。开发者能够间接将这个我的项目下载到本地,以此为根底开始搭建本人的博客站点。 $ git clone git@github.com:leancloud/hexo-engine.git下载好模板之后,咱们须要先装置好 Node.js 的我的项目依赖,以便于后续的操作: $ cd hexo-engine$ npm install4. 增加内容Hexo 框架将所有的博客文章对立搁置在 source/_posts 目录下。咱们进入 hexo-engine 目录,执行 hexo new 命令即可减少一篇新的博客文章。 例如咱们想减少一篇「5 分钟疾速搭建好你的集体站点」的博客,那么能够运行如下命令: $ cd hexo-engine$ hexo new "build your own website in 5 minutes"执行完之后咱们可看到如下的后果信息: ...

November 27, 2020 · 2 min · jiezi

关于hexo:在hexo中嵌入threejs运行shader或者threejs的场景

clone代码后查看运行时成果,或立刻拜访这里查看成果https://moshuying.top仓库链接,点个收费的星星感激不尽。 主题文件默认状况下仿佛不会主动clone能够切到主题目录下下载主题,能够自行clone主题最近想在hexo中嵌入一些shader,折腾了一些工夫后终于欠缺,实际上用这种办法不仅能够在hexo中嵌入shader,也能够嵌入babylonjs,pxixjs,Layabox,Egret,Cocos2等,先看成果,原理什么的其实很简略。 因为一些shader特地耗费显卡性能,在glsl_snippets.js中断定如果第一帧渲染工夫超过0.4秒就不再渲染了。也能够点击shader暂停渲染 嵌入shadershader起源shaderToy齐全反对shadertoy的代码,参考自大神的代码stackoverflow,在这位大神的代码里获取到齐全兼容shaderToy的思路。并将其改成更实用在hexo中。 示例代码 <!-- 至多须要一个div来搁置iframe,这样能够不便的将代码移入文章底部 --><div id="three"></div><script type="module" id="threeMain">if (!(self.frameElement && self.frameElement.tagName == "IFRAME")) { import("http://localhost:4000/uploads/createTHREE.js").then((result) => result.initHexoThreeModule(document.getElementById("three"),document.getElementById("threeMain")));} else { // 这里的代码会被间接执行,window指向iframe内的window(其实就是把代码整个挪动到了iframe内) import('http://localhost:4000/uploads/glsl_snippets.js').then(async res=>res.glsl_snippets(res.anotherGlsl))}</script>显示成果 嵌入threejs3D场景 个别状况下不倡议在一个页面放多个成果如有必要,能够通过交互时渲染,在视图内渲染等办法优化,防止页面卡死 倡议clone下这个仓库并运行起来,这两个成果都是能够交互的,也能够间接拜访我的小站查看成果https://moshuying.top 实现原理起因就是hexo对md文件中的script会渲染到页面上,然而不会显示进去,这就有短缺的操作空间了。 这里应用iframe的次要起因就是避免来回切换页面导致的webgl上下文问题。不然也不至于这么麻烦。 // 创立iframe并返回iframe内的window对象function createIframe(divNode) { return new Promise((resolve) => { let iframe = document.createElement("iframe"); // ... iframe.style = "position: absolute; width: 100%; height: 100%; left: 0; top: 0;border:none;"; iframe.onload = () => resolve(iframe.contentWindow); divNode.style = "position: relative; width: 100%; height: 0; padding-bottom: 75%;"; divNode.appendChild(iframe); });}创立完iframe后能够为iframe中加载对象了,之前应用的是经典前端的script src加载形式,思考到可能会被用到,这里保留了函数不便后续批改。理论应用中利用module中的import()函数间接引入在线文件即可 ...

October 5, 2020 · 1 min · jiezi

关于hexo:hexo部署之github-page报错

依据hexo官网文档 配置_config.yml文档,配置deploy,配置内容如下 type: git repo: githu地址 branch: gh-pages在执行 hexo clean && hexo deploy始终报错,报错信息如下 之前关注的点是 ExperimentalWarning: The fs.promises API is experimental这个异样信息提醒,是node版本过低有一些组件不反对最新版的hexo(5.0.0),然而无伤大雅; 通过排查,发现是deploy配置项的缩进谬误,而后调整这部分代码为 type: gitrepo: githu地址branch: gh-pages这里特地留神 后面的空格没了,此时可能失常执行 hexo clean && hexo deploy如果只是这样配置,那么会呈现一个问题,就是hexo d 失常执行了,然而github page没有变动,咱们执行的时候也没有报错,只能在本地服务器看到失常的页面,到此处咱们须要欠缺咱们的配置信息,配置为: deploy: type: git repo: github: github page地址 branch: gh-pages 欠缺之后,再执行hexo d就能够失常看到咱们所推送的页面信息了

September 23, 2020 · 1 min · jiezi

关于hexo:能动手绝不多说开源评论系统remark42上手指南

能动收不多说开源评论零碎 remark42 上手指南 前言写博客嘛, 谁不喜爱本人倒腾一下呢。 从自建零碎到 Github Page, 从 Jekyll 到 Hexo, 年老的时候谁不喜爱多折腾折腾呢。 年纪稍稍长了一下之后, 最初我本人还是选了 Hexo 间接做动态博客生成, 联合一下 Gitlab CI 推代码之后主动构建之后更新到本人的服务器了。 起初又基于“多说”间接反对了博客内容评论, 再起初,多说倒下了,评论性能就始终没有保护了。 前阵子因为某些需要,对市面上局部评论零碎做了一次调研, 这时候发现其实大家都做了好多轮子了,近期空进去了终于能够再玩玩了。 开源评论零碎调研调研前提: 开源,协定敌对,可商用我的项目代码“失常”(切实不太想看 Ruby/PHP),保护踊跃部署简略,二开不便上面间接扔了上次的调研后果进去。 vkuznecovas/mouthfulMouthful is a self-hosted alternative to Disqus https://mouthful.dizzy.zone/Golang 编写,反对 MySQL、PG、SQLIte,反对评论审核保护状态:2018 年之后没看到更新了FeaturesMultiple database support(sqlite, mysql, postgres, dynamodb)Moderation with an administration panelServer side caching to prevent excessive database callsRate limitingHoneypot feature, to prevent bots from posting commentsMigrations from existing commenting engines(isso, disqus)Configuration - most of the features can be turned on or off, as well as customized to your preferences.Admin login through third parties such as facebook and twitter, and 35 more.Dumping comments out, and importing an old dump.schn4ck/schnackSimple self-hosted node app for Disqus-like drop-in commenting on static websites https://schnack.cool/Node js 编写, SQLite, 没看到其余数据库的反对保护状态:最初一次更新是 15 个月前FeaturesTiny! It takes only ~8 KB!!! to embed Schnack.Open source and self-hosted.Ad-free and Tracking-free. Schnack will not disturb your users.It's simpy to moderate, with a minimal and slick UI to allow/reject comments or trust/block users.webpush protocol to notify the site owner about new comments awaiting for moderation.Third party providers for authentication like Github, Twitter, Google and Facebook. Users are not required to register a new account on your system and you don't need to manage a user management system.adtac/commentoA fast, bloat-free comments platform (Github mirror) https://commento.iogolang 编写,反对 PG保护状态:两个月还在更新,反对本地部署https://docs.commento.io/What features does Commento have?Commento comes with a lot of useful features out-of-the-box: rich text support, upvotes and downvotes, automatic spam detection, moderation tools, sticky comments, thread locking, OAuth login, email notifications, and more!posativ/issoa Disqus alternative https://posativ.org/isso/Python,SQLIte,引入了 ORM 组件然而临时没看到其余数据库的反对Admin panel to moderate comments保护状态:沉闷,几天前还在更新Isso – Ich schrei sonst – is a lightweight commenting server written in Python and JavaScript. It aims to be a drop-in replacement for Disqus. ...

August 6, 2020 · 6 min · jiezi

关于hexo:Hexo-静态博客指南建站教程上

本文最后公布于我的集体博客Bambrow's Blog,采纳 BY-NC-SA 许可协定,转载请注明出处。若有后续更新,将更新于原博客。欢送去我的博客浏览更多文章! 本文具体记录一下站点建设过程,以便查阅。对于具体的细节则不会做过多解释,次要展现步骤。这一篇次要讲述筹备工作、首次部署与主动部署的相干内容。 本文运行环境: node: v14.4.0npm: 6.14.7hexo: 4.2.1hexo-cli: 3.1.0筹备工作筹备工作次要参考了Hexo官网文档。 装置Git与Node.js在Mac上最不便的办法当然是通过Homebrew。 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"留神,可能在装置之前须要先装置Command Line Tools for Xcode。间接在终端输出xcode-select --install装置。 装置好Homebrew后,间接应用以下命令: brew install gitbrew install node在装置以上两个依赖之前,能够先运行brew update来更新Homebrew。此外,还能够运行brew doctor检查一下有没有什么抵触,能够及时处理。也能够把以下语句退出你的.bash_profile或者.zshrc,取决于你应用的shell: export PATH="/usr/local/bin:$PATH"装置好后,能够用以下命令查看是否装置胜利,胜利则会返回版本号: git --versionnpm -v装置Hexo间接应用npm装置: npm install -g hexo-cli查看一下hexo是否装置胜利,会返回以后的hexo版本号: hexo -v注册GitHub并新建集体仓库GitHub就不必多说了。注册实现后,新建私有仓库,名称为你的GitHub用户名.github.io。这个仓库用来寄存渲染好的页面。 此外,咱们再新建一个公有仓库,用来寄存源文件自身。仓库的名字任意取,我取的名字是blog。 这两个仓库最好不要初始化任何货色,也就是README,.gitignore和license都不要。这样新建的仓库齐全是空的。 设置Git与密钥文件首先运行以下两句进行Git配置: git config --global user.name "GitHub用户名"git config --global user.email "GitHub注册邮箱"其中把用户名和邮箱替换成你本人的。而后咱们生成密钥文件: ssh-keygen -t rsa -C "GitHub注册邮箱"间接一路回车上来就好,完结后会在~/.ssh/文件夹里生成id_rsa私钥文件与id_rsa.pub公钥文件。咱们读取一下公钥的内容并且手动拷贝: cat ~/.ssh/id_rsa.pub手动复制显示的内容。随后关上这个页面设置SSH Key。你也能够在GitHub主页点击你的右上角头像,抉择Settings,而后抉择SSH and GPG Keys找到这个界面。点击New SSH Key,题目能够轻易写,内容就是你方才复制的公钥内容,随后保留。 开始建站博客初始化首先抉择一个你喜爱的中央作为你的博客根目录。 ...

July 27, 2020 · 2 min · jiezi

关于hexo:Hexo部分配置及标签插件使用说明

参考文档: 标签插件参考:https://hexo.io/plugins/ 性能插件参考:https://hexo.io/zh-cn/docs/tag-plugins 资源文件夹参考:https://hexo.io/zh-cn/docs/asset-folders.html Markdown(md)写作模板:https://www.bas369.com/more/learning_notes/2020/03/14/Markdown%E5%86%99%E4%BD%9C%E6%A8%A1%E6%9D%BF/ 1.标签插件介绍Hexo官网的标签插件参考链接: https://hexo.io/zh-cn/docs/tag-plugins 若官网的参考文档表述不明; 请参考官网的 代码库 联合 浏览器的 F12 调试性能进行测试; 标签插件代码库的装置门路为:\node_modules\hexo\lib\plugins\tag 以下的测试阐明,基于 Hexo 的官网主题进行,未进行基于其余主题的测试; 其余主题可能存在 bug ,因为其余主题可能会批改官网默认的标签插件设置; 标签插件的固定格局为:花括号% 属性 其余参数 %花括号 属性 指 html 标签 或者 hexo 事后定义的标签; 例如:img 、link 、 asset_img 、post_link 等等; hexo根目录的局部配置(留神:不是主题目录的配置)阐明: index_generator: path: '' per_page: 10 # 定义每一个分页显示多少篇文章;0 示意首页显示全副文章; order_by: -date # Pagination ## Set per_page to 0 to disable pagination per_page: 10 # 定义文章归档页面,每一个页面显示多少篇文章明细; pagination_dir: page 2.文章增加图片关上我的项目根目录的配置文件 config.yml ,留神,不是主题的配置文件; 将配置文件中的 post_asset_folder 选项设为 true 来关上; 这样的话,在执行 hexo new post 文章 ,新建 文章.md 文件的时候; 会同时建设同名的 文章 资源文件夹;如果没有资源须要从 文章 资源文件夹 援用,那么能够删除该文件夹,hexo 在执行渲染的时候,不会出错;而且 文章 资源文件夹在通过 hexo 执行 html 渲染后,文件夹也会被删除; 文件夹的资源会被挪动到与 文章.html 雷同的目录; 所以,在 文章.md 援用文件夹资源的时候,才不须要蕴含门路; ...

July 22, 2020 · 2 min · jiezi

关于hexo:优雅的将hexo到github和coding

原文发表于我的博客, 特此做版权申明 CSDN: 优雅的将hexo到github和coding Noosphere.site: 优雅的将hexo到github和coding1. 前言上次写了篇文章 应用github action同时部署hexo到github和coding最优雅的形式,从实现原理的角度做了介绍,因为实现的指标比拟多,所以看起来比较复杂,这次咱们不讲原理,仅仅按实现目标来介绍如何配置。 1.1 指标先说咱们要实现的指标,而后再按指标来介绍办法 hexo的source寄存在独立公有库jiuhao生成的动态文件寄存在github和coding独立的库本地能够通过 hexo d -g一个命令一次性部署到github和coding能够通过git push推送到github的surce仓库后,由action触发部署到github和coding的动态仓库同时实现3和4,只须要配置一次_config.yml。而不须要在action外面写死指标动态仓库的地址,不便保护反对多个github账号,同时也反对多个coding账号阐明: 指标 1 把 source 放在独立的公有库是安全性思考指标 3 和 4 是不便能够应用两种办法都能达到部署的指标, 3 是手工部署, 4 是通过git push触发,比方 github 的 action 可能某些起因失败了,临时又没工夫去保护,那么我能够间接在本地hexo d -g部署就行指标5是实现3和4的时候,两种办法的指标仓库(publish repo)地址配置只须要一处保护,不须要扩散在 _config.yml 和 github action指标 6 是可选指标。 如果不须要辨别工作和私人用的github 账号,能够不须要理睬这个指标。1.2 已有的解决方案剖析为了达到下面这些指标,我找了一轮市面上各种各样的解决方案,没看到齐全符合要求的。次要问题包含 github action market上的hexo action没有反对同时部署到github和coding的action能够间接重用github action market上已有的hexo action的deploy形式无非两种,一种是间接把指标(publish repo)仓库地址配置action,一种是间接应用source外面_config.yml的配置. 如果是前者,则意味着咱们须要吧publish repo写在两个中央,一个是本地的_config.yml一个是action。保护起来比拟麻烦。显著应该应用后者。其余的一些博客提到的办法外面,大多存在后面一点存在的问题,而且大多是间接在action里定制脚本,没有抽成action,不不便重用。就这样,观摩了一轮,我决定fork一个github mark上的hexo action进去,按需要本人弄一个action,通过考查,[sma11black/hexo-action](https://github.com/sma11black/hexo-action)这个action比拟靠近需要,只须要简略革新就能够应用,怎么革新这里就不说了,{% post_link hexo-action-deploy-to-coding-and-multi-account 见上一篇文章%} 通过简略革新的action的仓库是 [noosphere-coder/hexo-action@master](https://github.com/noosphere-coder/hexo-action),上面咱们间接应用就好 2 注释2.1 只实现目标1-5的配置排除掉指标6,只须要是实现下面说的1-5的指标,也即是咱们能够应用咱们平时曾经在github和coding外面应用的ssh key就好。那么配置很简略 ...

July 21, 2020 · 2 min · jiezi

hexo插件向谷歌必应百度提交链接以快速收录

hexo应用hexo-submit-urls-to-search-engine插件后,可被动推送Hexo博客新链接至谷歌、必应、百度搜索引擎站长平台以晋升网站收录品质和速度。 之前的插件都只反对百度,仅供“局域网”应用…… 当初我的一篇文章刚公布 5 分钟,即可在必应搜寻到。看吧,这就是 hexo-submit-urls-to-search-engine 的威力。 装置在 Hexo 根目录下执行指令: $ npm install hexo-submit-urls-to-search-engine --save应用在 Hexo 根目录下的 _config.yml 文件中,增加以下配置项: hexo_submit_urls_to_search_engine: # 提交最新的 n 个链接 count: 10 # 提交批改工夫在 n 秒内的链接,单位秒。例如: # 有两个文件 a.txt 和 b.txt,别离对应 https://yoursite.com/a.txt 和 https://yoursite.com/b.txt # 其更新工夫距以后别离为 800s 和 1000s(period 字段设为 900) # 则 https://yoursite.com/a.txt 会被提交,https://yoursite.com/b.txt 不会 period: 900 # 提交链接的条件,可选值:count | period。不同取值的含意如下: # count :利用上述的 count 配置项 # period:利用上述的 period 配置项 submit_condition: count # 是否向 Google 提交,可选值:1 | 0(0:否;1:是) google: 0 # 是否向 Bing 提交,可选值:1 | 0(0:否;1:是) bing: 1 # 是否向 Baidu 提交,可选值:1 | 0(0:否;1:是) baidu: 1 # 文本文档的地址,要推送的链接会保留在此文本文档里 txt_path: submit_urls.txt # 在百度站长平台中注册的域名 baidu_host: https://yoursite.com/ # 百度主动推送 API 的 token(获取形式见插件文档:https://cjh0613.github.io/blog/20200603HexoSubmitUrlsToSearchEngine.html) baidu_token: xxxxx # 在必应站长平台中注册的域名 bing_host: https://yoursite.com/ # 必应主动推送 API 的 token(获取形式见插件文档:https://cjh0613.github.io/blog/20200603HexoSubmitUrlsToSearchEngine.html) bing_token: xxxxx # 在谷歌站长平台中注册的域名 google_host: https://yoursite.com/ # 寄存 google key 的 json 文件,放于网站根目录 google_key_file: google_key.json当然你也能够应用环境变量记录私钥,这样即便源码放在公开仓库,也不会泄露秘钥。 ...

July 14, 2020 · 1 min · jiezi

使用-CODING-DevOps-全自动部署-Hexo-到-K8S-集群

背景如何做团队技术文章分享和沉淀?这是一个老生常谈的话题。常见的技术选型可以是 Confluence、Dokuwiki、Gitbook 等。 但对于敏捷团队来说,这些都不够优雅,我们希望能把技术文章像代码一样进行协作和版本管理。更新技术文章后,能够自动部署到公司的 K8S 集群。那么,CODING DevOps + Hexo 一定是你的不二之选,这也是 CODING 目前的实践。 Hexo 是一个快速、简洁且高效的博客框架。我们只需要书写 Markdown 格式的技术文章,通过命令能够直接生成静态页面,方便浏览和部署。 本文将介绍如何使用 CODING DevOps 建立流水线,推送技术文章到 Git 仓库后,自动触发流水线执行构建并部署到 K8S 集群。 准备K8S 集群,推荐使用腾讯 TKE开通 CODING DevOps克隆代码仓库:https://wangweicoding.coding....实现效果提交新文章,自动触发构建流程 生成静态页面,构建 Docker 镜像 镜像构建成功,自动触发部署流程 部署成功,新文章发布 实践步骤1. 克隆代码并推送到自己的 CODING Git 仓库git clone https://e.coding.net/wangweicoding/blog.gitgit remote set-url origin [CODING Git Url]git push2. 开通 CODING 制品库开通 Docker 类型的制品库,并记录仓库地址和制品库名称,将在下一个阶段用到。 3. 开通 CODING 持续集成,并配置构建任务选择“自定义构建过程”,并配置来源使用代码仓库的 Jenkinsfile 项目内的 Jenkinsfile 主要是用来生成静态页面,以及构建镜像并推送镜像到制品库。 pipeline { agent any stages { stage('检出') { steps { checkout([ $class: 'GitSCM', branches: [[name: env.GIT_BUILD_REF]], userRemoteConfigs: [[url: env.GIT_REPO_URL, credentialsId: env.CREDENTIALS_ID]] ]) } } stage('生成静态页面') { steps { script { sh 'npm install -g hexo-cli' # 安装 Hexo sh 'npm install' # 安装依赖 sh 'hexo g' # 生成静态页面 } } } stage('构建') { steps { echo '构建中...' script { // 此处请修改 dockerServer、dockerPath、imageName 替换为自己项目的值 dockerServer = 'wangweicoding-docker.pkg.coding.net' dockerPath = '/blog/blog' imageName = "${dockerServer}${dockerPath}/blog:${env.GIT_BUILD_REF}" def customImage = docker.build(imageName) // 推送 Docker 镜像到仓库 docker.withRegistry("https://${dockerServer}", CODING_ARTIFACTS_CREDENTIALS_ID) { customImage.push() } } } } }}注意:请将 Jenkinsfile 内变量 dockerServer、dockerPath、imageName 修改为自己的制品库地址、制品库名 、制品名。 ...

July 6, 2020 · 2 min · jiezi

搭建基于Hexo的个人博客

HexoHexo是一个基于Node.js,快速、简洁且高效的博客框架。Hexo使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。 开始搭建本文环境1)操作系统:Window 102)Node.js:v10.16.3 (x64)3)Hexo:v3.9.01.安装Git进入Git官网下载自己系统对应的版本,安装过程一路点下一步。2.安装Node.js进入Node.js官网下载自己系统对应的版本。这里有两个版本,我选的是LTS版本(稳定版),Current是最新版,安装过程一路点下一步。检查Node.js是否安装成功:① 在任意目录右键选择Git Bash② 输入命令 node -v 按回车查看版本信息。③ 出现如下图版本信息则安装成功。3.安装Hexo安装Node.js包管理器: Hexo安装我们需要使用npm,全称node package manager,它是Node.js的包管理器。① 安装Node.js的时候npm就顺带安装好了,输入 npm -v 命令可以查看npm版本信息。 ② 由于npm安装插件包是从国外服务器下载,速度会比较慢。所以我们使用淘宝团队提供的cnpm下载速度会快点。 ③ 通过npm安装cnpm,在命令行中输入如下命令然后按回车 npm install -g cnpm --registry=https://registry.npm.taobao.org④ 等待安装完成后,输入 cnpm -v 命令出现如下信息则安装成功。 使用cnpm安装Hexo框架: ① 输入如下命令,然后按回车执行命令: cnpm install -g hexo-cli② 等待安装完成后,输入 hexo -v 检查是否安装成功: 4.使用Hexo搭建博客生成博客:① 在任意目录使用 hexo init [folder] 命令来生成我们的博客,如下我在D盘生成。 ② 等待命令执行结束后,就可以看到博客文件夹了。名字由上面的folder参数来指定,如下我的博客目录名称是MyBlog 测试博客:① 进入到博客根目录,输入命令 hexo s 启动本地服务测试博客。 ② 在浏览器中输入localhost:4000,就可以看到我们博客的默认效果了。 ③ 回到命令行,按快捷键Ctrl + C即可关闭服务。 至此,博客搭建完成了,接下就可以使用Hexo愉快地写博客了~

July 4, 2020 · 1 min · jiezi

利用-Hexo-Github-Pages-搭建博客

概述我的博客本文总结一下 Hexo 搭建博客的主要流程,能够在日后快速恢复博客环境。 Hexo 的官方文档写的已经很全面了,本文仅将一些注意点列出。欢迎加入前端交流群:749539640 安装 Hexo 的文档参考: Hexo 文档前提安装 Hexo 之前,你的电脑上需要有 Node.jsGit如果是 Mac 用户, 您在编译时可能会遇到问题,请先到 App Store 安装 Xcode,Xcode 完成后,启动并进入 Preferences -> Download -> Command Line Tools -> Install 安装命令行工具 安装 Hexo全局安装 hexo-cli: npm install -g hexo-cli如果遇到权限的问题,可以使用如下命令: sudo chown -R $(whoami) /usr/local/lib/node_modules/设置 /usr/local/lib/node_modules/ 文件夹属于当前用户。 此外,如果你要使用 root 权限安装的话,可以使用 sudo -s 切为 root 用户进行相关操作。这么做的话,会将一些文件夹的默认属组设置为 root 了,不推荐。 npm 权限问题: Global installs (sudo npm i -g) fail on Mac after 6.5 upgrade. Works fine after 6.4.1 downgradenpm,yarn如何查看源和换源建站hexo init MyBlogcd MyBlognpm install执行完毕之后,博客其实已经 OK 了: ...

July 2, 2020 · 5 min · jiezi