开发小白也毫无压力的hexo静态博客建站全攻略 - 躺坑后亲诉心路历程

news/2024/5/9 21:21:45/文章来源:https://blog.csdn.net/weixin_33747129/article/details/94720025

目录

  • 基本原理
  • 方法1 - 本机Windows下建站 (力荐)
    • 下载安装node.js
    • 用管理员权限打开命令行,安装hexo-clihexo
    • 下载安装git
    • 初始化hexo
    • 使用hexo generate生成静态资源
    • 在本地运行hexo,看一切是否正常
    • Coding.net创建与用户名相同的项目,并启用代码的pages功能
    • 启用通过githexo部署到远程的功能
    • 使用_config.yml来配置hexo
    • 使用hexo clean && hexo g && hexo d发布hexo博客
    • 域名绑定
    • 主题使用
  • 方法2 - Cloud Studio下建站 (力荐)
    • Coding.net创建与用户名相同的项目,并启用pages功能
    • 使用现有项目创建工作区
    • 使用命令行配置环境
    • _config.yml文件的配置、域名绑定、主题使用等等

本文介绍对开发小白也毫无压力的hexo静态博客建站全攻略,github.iocoding.me的静态博客类似,3年前本人基于本机Windowsgithub.io上创建了静态Github Pages - yanglr,本文以在Coding pages上建站为例。

基本原理

配置区: 用于hexo博客的配置,成功部署后原hexo init产生的目录下会生成一个public的文件夹。

发布区:
事实上,这一部分就是由配置区生成的public文件夹中的内容。

发布区的代码必须是公开的,配置区的代码看需要了,如果git部署时使用的是repo: https://用户名:密码@仓库地址这种方式,如果也push到公开代码的仓库就会泄漏个人密码了,所以建议配置在自己的电脑上进行,或使用ssh key的形式代替明文密码。

方法1 - 本机Windows下建站 (力荐)

下载安装node.js

到官网下载nodejs的最新LTS版安装即可。

用管理员权限打开命令行,安装hexo-clihexo

$ npm install hexo-cli -g
$ npm install hexo --save

如果安装速度很慢,可以考虑先换淘宝镜像源:

$ npm install -g cnpm --registry=https://registry.npm.taobao.org

再继续进行安装~

下载安装git

到Git官网下载Git Windows版,使用默认设置进行安装即可。

初始化hexo

比如,打算在D:\盘进行配置,若将配置的文件夹取名为blog,操作如下:

$ cd D:\
$ hexo init blog

文件夹名字任意起,根据个人需要了。

使用hexo generate生成静态资源

存放hexo配置的文件夹blog创建好之后,就可以使用hexo generate来生成静态资源了,该命令也可简写为"hexo g"。

在本地运行hexo,看一切是否正常

此时可使用hexo server(简写为hexo s)来开启本地web服务器查看页面效果,默认情况下在浏览器中打开http://localhost:4000即可看到如下界面:
img

Coding.net创建与用户名相同的项目,并启用代码的pages功能

打开网址https://dev.tencent.com/user/projects/create,即可创建项目。
由于项目名字与用户名legege007一致,所以我的coding静态pages的访问地址即为 legege007.coding.me, 你用同样的方法,地址会变成你的用户名.coding.me。而如果你的项目名是blog, 而用户名不是blog,则此时coding静态pages的访问地址即为你的用户名.coding.me/blog, 这样会有一个隐含的问题在,就是如果你要绑定个人域名,会导致静态资源js、css等加载失败,即博客会出现有文字但呈现页面混乱的情形。

这里也亲自淌过坑,最终发现有效的处理办法是:
创建的项目名必须要和用户名一致,创建的项目名必须要和用户名一致,创建的项目名必须要和用户名一致,强调三连~

启用通过githexo部署到远程的功能

完成此项工作,需要先安装hexo-deployer-git, 相应需要在命令行中执行:

$ npm install hexo-deployer-git --save

安装途中可能会遇到问题:
"npm WARN babel-eslint@10.0.1 requires a peer of eslint@>= 4.12.1 but none is installed. You must install peer dependencies yourself. ",
这里亲自淌过坑,试了很多方法,最终发现有效的处理办法是:

$ npm install lodash
$ npm install eslint@^4.12.0

使用_config.yml来配置hexo

一开始,我们只需要修改deloy相关才参数即可.

deploy:type: git  #上传类型 选择gitrepo: https://legege007:yl15826911621@git.dev.tencent.com/legege007/legege007.git  # 执行 git remote -v 可以获得branch: master  # 部署到 Master分支#message: update blog # 每次提交的信息 不填默认为当前时间

只需要将repo改为你的仓库的ssh版地址即可。
同时,你还需要在coding项目中加入自己的公钥,具体方法为:
打开命令行终端输入ssh-keygen -t rsa -C <your_email@example.com>(你的邮箱),连续点击 Enter 键即可。

Enter file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter] 
// 此处推荐使用默认地址,也可在密钥后面加后缀,即输入"id_rsa_coding"

找到刚才生成的id_rsa_coding.pub,将其中的内容贴到Coding的公钥信息中:
img
此时,git推送应该具有权限了~
目前为止,_config.yml配置文件只需要改deploy这一处!

使用hexo clean && hexo g && hexo d发布hexo博客

不出意外的话,等命令完全跑完就能从静态地址你的用户名.coding.me看到你的博客内容了。

域名绑定

先去域名管理系统中加一条CNAME记录, 比如我的域名是https://enjoy233.cn,此处想绑定到https://www.enjoy233.cn,则添加方法如下:
record1

_config.yml中的urlhttp://yousite.com改为实际用的,比如我设置为:

url: //www.enjoy233.cn
root: /

然后在coding pages的页面中设置如下:
img2
过几分钟后,就能通过域名https://www.enjoy233.cn来访问我的博客了。

主题使用

个人觉得 hexo主题 Material X还挺不错的,配置文档为 Material X - Wiki~
就安装试了一下,首先命令行要做的事情是:

$ cd blog
$ git clone https://github.com/xaoxuu/hexo-theme-material-x themes/material-x$ npm i -S hexo-generator-search hexo-generator-feed hexo-renderer-less hexo-autoprefixer hexo-generator-json-content hexo-recommended-posts

然后将_config.yml中的theme(默认是landscape)配置为:

theme: material-x

此时,再使用hexo clean && hexo g && hexo d发布博客,然后刷新博客就能看到使用主题后的效果了。

方法2 - Cloud Studio下建站 (力荐)

此处介绍在Cloud Studio中使用两个branch建站的方法,master分支作为发布区,config分支作为配置区。如果不另建分支,千万不要使用Cloud Studio的push代码的功能,不然上传的会是配置相关的所有文件(真个blog文件夹,而不是仅有public文件夹下的内容),会导致博客无法正常使用。
这里也亲自淌过坑,所以强调一下~

Coding.net创建与用户名相同的项目,并启用pages功能

打开网址 https://dev.tencent.com/user/projects/create, 开始创建项目。

我的用户名是legege007,于是就建了个legege007的项目.
img

使用现有项目创建工作区

打开网址 https://studio.dev.tencent.com/dashboard/workspace/create, 即可进入Cloud Studio。
我选择使用了node.js的环境来进行配置,同时选中项目legege007,然后创建即可。
img

使用命令行配置环境

Cloud studio中默认是Linux系统,我习惯于用root的权限来操作,免得后面还需要用chmod之类的命令来改权限,一进IDE界面,使用命令sudo su切换即可。

$ sudo su

然后新建config分支后,配置主要在该分支上进行。

$ git checkout -b config

其他相关命令使用过程具体如下:

➜  workspace git:(master) sudo su
root@coding:/home/coding/workspace# git checkout -b configroot@coding:/home/coding/workspace# git checkout -b config
Switched to a new branch 'config'root@coding:/home/coding/workspace# hexo init blogroot@coding:/home/coding/workspace# cd blog/
root@coding:/home/coding/workspace/blog# hexo groot@coding:/home/coding/workspace/blog# hexo clean && hexo g && hexo droot@coding:/home/coding/workspace/blog# npm install hexo-deployer-git --saveroot@coding:/home/coding/workspace/blog# npm audit fixroot@coding:/home/coding/workspace/blog# npm install lodashroot@coding:/home/coding/workspace/blog# npm install eslint@^4.12.0root@coding:/home/coding/workspace/blog# npm install hexo-deployer-git --saveroot@coding:/home/coding/workspace/blog# hexo clean && hexo g && hexo droot@coding:/home/coding/workspace/blog# ssh-keygen -t rsa -C "legege007@yeah.net"
root@coding:/home/coding/workspace# cd ~/.ssh
root@coding:~/.ssh# ls
id_rsa  id_rsa.pub  known_hosts
root@coding:~/.ssh# vim id_rsa.pubroot@coding:/home/coding/workspace/blog# hexo clean && hexo g && hexo d

上述命令和在windows下操作时基本一致遇到问题,解决问题即可~

_config.yml文件的配置、域名绑定、主题使用等等

_config.yml文件的配置、域名绑定、主题使用等等,基本上与在Windows下安装完全一样,参考Windows下同样的操作即可,就不再赘述了。

安装完主题后的界面是:
UI

另外,值得一提的是:
Cloud Studio还有几个优势,即:

  • 可以迅速切换环境,比如hexonode.js.net CoreUbuntuJava等互转,速度超快的。
  • 可以一键部署,除了coding.me的域名可用以外,一键部署后,还提供一个coding.io的域名可以访问。如果暂时没买个人域名,这就是个大福利了~

img6

如有帮助,麻烦在右下角"推荐"一下,多谢~

转载于:https://www.cnblogs.com/enjoy233/p/build_site_guide_using_hexo_and_coding-net_for_beginners.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_822526.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机器学习实战—k近邻算法(kNN)02-改进约会网站的配对效果

示例&#xff1a;使用k-近邻算法改进约会网站的配对效果 在约会网站上使用k-近邻算法&#xff1a; 1.收集数据&#xff1a;提供文本文件。 2.准备数据&#xff1a;使用Python解析文本文件。 3.分析数据&#xff1a;使用matplotlib画二维扩散图。 4.训练算法&#xff1a;此…

php微信用户绑定网站用户

php微信用户绑定网站用户实现原理&#xff1a;因为对于每个公共号&#xff0c;每个微信用户的open_id是固定不变的&#xff0c;也就是说可以利用网站用户id与微信用户的open_id建立一一对应关系。废话不多说&#xff0c;直接看代码&#xff1a; 数据库设计如下&#xff1a; 当…

JavaScript中mouseover和mouseout多次触发解决办法

问题描述 我希望当鼠标移动到id1上的时候&#xff0c;id2显示&#xff0c;当鼠标离开id1的时候&#xff0c;id2不显示。问题如下&#xff1a; 1.当鼠标从id1上移动到id2上的时候&#xff0c;id由有显示变为不显示&#xff0c;然后变为显示 2.当鼠标从id2上移动到id1上的时候…

怎样给自己的网站添加一个在浏览器标签、地址栏左边和收藏夹上显示的缩略logo标志

问题描述 不知道&#xff0c;大家有没有注意&#xff0c;有的网站&#xff0c;地址栏上都有一个小图标&#xff0c;如csdn或者是百度。 但是我个人做的网站就没有&#xff0c;怎样添加这样的图标呢&#xff1f; 其实&#xff0c;这个是通过favicon.ico来控制的。 favicon.ico…

当修改网站上的图片等资源时怎样避免客户缓存的问题

问题分析 最近在修改网站上的logo时候&#xff0c;发现修改后&#xff0c;浏览的时候&#xff0c;还是看到之前的图片&#xff0c;PC端多多刷新几次&#xff0c;显示倒是okey&#xff0c;可是手机端依旧是原图片。很明显是缓存的问题&#xff0c;但是我又不想清除手机浏览器缓…

在window中通过IIS发布自己的网站经验总结

转自&#xff1a;https://blog.csdn.net/YSG___/article/details/69061310?utm_mediumdistribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.control&depth_1-utm_sourcedistribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.c…

Win10下IIS配置、项目发布、添加网站

转自&#xff1a;https://study-life.blog.csdn.net/article/details/77006831?utm_mediumdistribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-7.control&depth_1-utm_sourcedistribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2…

内存泄露检查工具及相关网站

Visual Leak Detector http://xiaoruanjian.iteye.com/blog/1091410 灵活自由是C/C语言的一大特色&#xff0c;而这也为C/C程序员出了一个难题。当程序越来越复杂时&#xff0c;内存的管理也会变得越加复杂&#xff0c;稍有不慎就会出现内存问题。内存泄漏是最常见的内存问题之…

源码托管网站推荐——OKSvn

在团队开发时&#xff0c;没使用SVN或者其他版本控制工具必将带来很多不必要的麻烦。在本机搭建SVN的方法虽然可行&#xff0c;但你不能保证你的电脑一直处于运行状态&#xff0c;显然是很不方便的。 我们知道&#xff0c;新浪、谷歌都有项目托管&#xff0c;由于网速…

WordPress 在主题网站添加新年快乐红灯笼特效源码样式

在春节过年的时候看到有在WordPress博客网站添加了红灯笼新年快乐样式。很有过年气氛&#xff0c;今天就给大家分享一下具体的代码样式。 WordPress主题过节灯笼 CSS 样式 这个样式代码可以加在自己的主题 css 样式文件里&#xff0c;也可以单独写进去。部分 WordPress 主题&a…

网站变灰代码,一行代码让网站整体变灰,wordpress网站一行代码全站变灰教程

在遇到特殊情况的时候&#xff0c;我们作为站长需要紧急将网站变灰的需求&#xff0c;在此小编给大家总结了几种方法&#xff0c;通过简单修改一下站点样式即可实现。一段代码让网站整体变灰。这里主要介绍的利用 filter: grayscale属性来实现。供大家学习交流。 网站变灰代码…

WordPress插件 SuperPWA让你的WordPress网站瞬间变成APP

PWA 是 Progressive Web App 的英文缩写&#xff0c; 翻译过来就是渐进式增强 WEB 应用&#xff0c; 是 Google 在 2016 年提出的概念&#xff0c;2017 年落地的 web 技术。目的就是在移动端利用提供的标准化框架&#xff0c;在网页应用中实现和原生应用相近的用户体验的渐进式…

WordPress 网站怎么做会员中心功能【会员中心】

WordPress网站的会员后台与管理员后台默认是一样的&#xff0c;只不过功能少一些而已。但从整体版面上看&#xff0c;Wordpress 网站会员后台并不美观&#xff0c;很多站长并不喜欢这样的后台。那么对于使用 WordPress 建网站的站长&#xff0c;怎么样开发出一个版面美观的会员…

使用angular $interval服务实现购物网站秒杀活动时间倒计时

最近在做一个购物网站的秒杀活动,其中涉及到了一个时间的倒计时. 所谓“秒杀”&#xff0c;就是网络卖家发布一些超低价格的商品&#xff0c;所有买家在同一时间网上抢购的一种销售方式。通俗一点讲就是网络商家为促销等目的组织的网上限时抢购活动。由于商品价格低廉&#xf…

怎么扒站建站_深扒国内建站服务:网站建设哪家服务好?

企业如果想通过互联网来打响品牌&#xff0c;吸引更多客户&#xff0c;一个自己的官方网站是少不了的。如今各种建站服务商也有很多&#xff0c;但是服务质量良莠不齐&#xff0c;这该怎么选择呢&#xff1f;今天就跟大家深扒一下网站建设哪家服务好&#xff0c;让你明白企业到…

python与seo应用_python网络爬虫与SEO搜索引擎优化介绍

1. 什么是爬虫&#xff1f;首先应该弄明白一件事&#xff0c;就是什么是爬虫&#xff0c;为什么要爬虫&#xff0c;博主百度了一下&#xff0c;是这样解释的&#xff1a;网络爬虫(又被称为网页蜘蛛&#xff0c;网络机器人&#xff0c;在FOAF社区中间&#xff0c;更经常的称为网…

PHP网站留言要加验证码,php – 需要一些帮助来添加一些验证码联系表单

嗨,我是PHP的新手,我想要一些帮助.我已经创建了一个联系表单,我想添加一些验证码.我已经创建了一些gif图像,其中包含添加了一些噪音的数字,并将no1命名为code_01.gif,no2等命名为code_02.gif等.我已经将其中的一些设置在我的表单上,静态地用于显示目的,如此&#xff1a;我想添加…

大型网站架构演变和知识体系

之前也有一些介绍大型网站架构演变的文章&#xff0c;例如LiveJournal的、ebay的&#xff0c;都是非常值得参考的&#xff0c;不过感觉他们讲的更多的是每次演变的结果&#xff0c;而没有很详细的讲为什么需要做这样的演变&#xff0c;再加上近来感觉有不少同学都很难明白为什么…

网站安全解决方案

网站安全解决方案1.项目背景根据国家计算机网络应急技术处理协调中心&#xff08;简称CNCERT/CC&#xff09;2008年上半年的统计报告&#xff0c;中国大陆被篡改网站的数量相比往年处于明显上升趋势&#xff0c;共监测到中国大陆被篡改网站总数达到35113 个&#xff0c;同比增加…

借双慧眼识别钓鱼欺诈网站

借双慧眼识别钓鱼欺诈网站 钓鱼欺诈网站&#xff0c;又称仿冒网站。这些网站的内容主要是复制那些正常网站的内容&#xff0c;使得网民粗一看几乎和正常网站一模一样&#xff0c;区别仅限于浏览器的地址。 曾有新闻报道有骗子在北京街头做了个假ATM机&#xff0c;这ATM机和市民…