由于文章排版样式问题,你可以直接【查看原文】,样式看起来会舒服些,有问题可以直接在 我的个人博客 评论里问。这篇文章讲的是使用HEXO搭建个人博客,推荐下我的另外一篇 Jekyll搭建个人博客,简书链接地址。
经过各种找资料,踩过各种坑,终于搭建好了hexo,域名是在万维网上买的,我的hexo是3.1.1版本,hexo不同的版本,很多配置都不一样。好吧,废话不多说了,开始吧。
正文:
hexo是一款基于Node.js的静态博客框架, hexo github链接 ,这篇教程是针对与Mac的,参考链接,由于原文讲到的hexo是以前的老版本,所以现在的版本配置的时候会有些改动。
之前是想着写博客,一方面是给自己做笔记,可以提升自己的写作、总结能力,一个技术点我们会使用,并不难,但是要做到让让别人也能听懂我们讲得,还是需要一定的技巧和经验的。很多类似于CSDN、博客园也都可以写文章,但是页面的样式我,不是太喜欢,简书还算好点得。最近看到一些大神们的博客,貌似都是用hexo写得,我也依葫芦画瓢的搭建了一个。不罗嗦了,直接上搭建步骤。
配置环境
安装Node(必须)
作用:用来生成静态页面的
到Node.js官网下载相应平台的最新版本,一路安装即可。
安装Git(必须)
作用:把本地的hexo内容提交到github上去.
安装Xcode就自带有Git,我就不多说了。
申请GitHub(必须)
作用:是用来做博客的远程创库、域名、服务器之类的,怎么与本地hexo建立连接等下讲。
github账号我也不再啰嗦了,没有的话直接申请就行了,跟一般的注册账号差不多,SSH Keys,看你自己了,可以不配制,不配置的话以后每次对自己的博客有改动提交的时候就要手动输入账号密码,配置了就不需要了,怎么配置我就不多说了,网上有很多教程。
正式安装Hexo
Node和Git都安装好后,首先创建一个文件夹,如blog,用户存放hexo的配置文件,然后进入blog里安装Hexo。
执行如下命令安装Hexo:
sudo npm install -g hexo
初始化然后,执行init命令初始化hexo,命令:
hexo init
好啦,至此,全部安装工作已经完成!blog就是你的博客根目录,所有的操作都在里面进行。
生成静态页面
hexo generate(hexo g也可以)
本地启动
启动本地服务,进行文章预览调试,命令:
hexo server
浏览器输入http://localhost:4000
我不知道你们能不能,反正我不能,因为我还有环境没配置好
配置Github
建立Repository
建立与你用户名对应的仓库,仓库名必须为【your_user_name.github.io】,固定写法
然后建立关联,我的blog在本地/Users/leopard/blog,blog是我之前建的东西也全在这里面,有:
_config.yml node_modules public source
db.json package.json scaffolds themes
现在我们需要_config.yml文件,来建立关联,命令:
vim _config.yml
翻到最下面,改成我这样子的
deploy:
type: git
repo: https://github.com/leopardpan/leopardpan.github.io.git
branch: master
然后执行命令:
npm install hexo-deployer-git --save
网上会有很多说法,有的type是github, 还有repository最后面的后缀也不一样,是github.com.git,我也踩了很多坑,我现在的版本是hexo: 3.1.1,执行命令hexo -vsersion就出来了,貌似3.0后全部改成我上面这种格式了。
忘了说了,我没用SSH Keys如果你用了SSH Keys的话直接在github里复制SSH的就行了,总共就两种协议,相信你懂的。
然后,执行配置命令:
hexo deploy
然后再浏览器中输入http://leopardpan.github.io/就行了,我的github的账户叫leopardpan,把这个改成你github的账户名就行了
部署步骤
每次部署的步骤,可按以下三步来进行。
hexo clean
hexo generate
hexo deploy
一些常用命令:
hexo new"postName" #新建文章
hexo new page"pageName" #新建页面
hexo generate #生成静态页面至public目录
hexo server #开启预览访问端口(默认端口4000,'ctrl + c'关闭server)
hexo deploy #将.deploy目录部署到GitHub
hexo help # 查看帮助
hexo version #查看Hexo的版本
报错总结
ERROR Deployer not found: git 或者 ERROR Deployer not found: github
解决方法: npm install hexo-deployer-git --save
如发生报错: ERROR Process failed: layout/.DS_Store , 那么进入主题里面layout和_partial目录下,使用删除命令:
rm-rf.DS_Store
ERROR Plugin load failed: hexo-server
原因:
Besides,utilities are separated into a standalone module.hexo.util is not reachable anymore.
解决方法,执行命令:
sudo npm install hexo-server
执行命令hexo server,提示:Usage: hexo ....
原因:
我认为是没有生成本地服务
解决方法,执行命令:
npm install hexo-server --save
提示:hexo-server@0.1.2 node_modules/hexo-server
....
表示成功了参考
这个时候再执行:
hexo-server
得到:
INFOHexois running at http://0.0.0.0:4000/.PressCtrl+C to stop.
这个时候再点击http://0.0.0.0:4000,正常情况下应该是最原始的画面,但是我看到的是:
白板和Cannot GET / 几个字
原因:
由于2.6以后就更新了,我们需要手动配置些东西,我们需要输入下面三行命令:
npm install hexo-renderer-ejs --save
npm install hexo-renderer-stylus --save
npm install hexo-renderer-marked --save
这个时候再重新生成静态文件,命令:
hexo generate(或hexo g)
启动本地服务器:
hexo server(或hexo s)
再,点击网址http://0.0.0.0:4000OK终于可以看到属于你自己的blog啦,😄,虽然很简陋,但好歹有了一个属于自己的小窝了。参考链接,本地已经简单的设置好了,但是现在域名和服务器都是基于自己的电脑,接下来需要跟github进行关联。
主题推荐
这里有大量的主题列表使用方法里面
都有详细的介绍,我就不多说了。
我这里有几款个人认为不错的主题,免去你们,一个一个的选了,欢迎吐槽我的审美,😄
Cover- A chic theme with facebook-like cover photo
Oishi- A white theme based on Landscape plus and Writing.
Sidebar- Another theme based on Light with a simple sidebar
TKL- A responsive design theme for Hexo. 一个设计优雅的响应式主题
Tinnypp- A clean, simple theme based on Tinny
Writing- A small and simple hexo theme based on Light
Yilia- Responsive and simple style 优雅简洁响应式主题,我用得就是这个。
Pacman voidy- A theme with dynamic tagcloud and dynamic snow
一些基本路径
文章在source/_posts, 文章支持Markdown语法,可以使用一些MarkDown渲染工具。如果想修改头像可以直接在主题的_config.yml文件里面修改,友情链接,之类的都在这里。开始打理你的博客吧,有什么问题或者建议,都可以提出来,我会继续完善的。
修改头像
我当前的路径/Users/leopard/blog/themes/yilia,ls 你可以看到
Gruntfile.js _config.yml package.json
README.md layout source
vim _config.yml 进去,找到 #你的头像url avatar: 后接一个URL就行了,头像就修改成功了
修改主题和作者名字
我当前的路径/Users/leopard/blog,ls 你可以看到
_config.yml node_modules public source themes
db.json package.json scaffolds ssh-keygen
vim _config.yml 进去,找到 author: 潘柏信,修改成你自己的名字就行了
修改主题,然后继续往下找到
# Extensions
## Plugins: http://hexo.io/plugins/
## Themes: http://hexo.io/themes/
theme:yilia
改成theme: yilia,theme:后面接你自己的主题名字就行了,然后分别执行
部署 hexo g
提交 hexo d
你的主题,和名字就修改成功了
Markdown语法参考链接
转载请注明原地址,潘柏信的博客:http://leopardpan.github.io谢谢!
想修改下文章格式,发现简书上只有新发表的文章才能使用MarkDown语法,大家有什么好的建议没,求推荐。
网友评论
https://jelly54.github.io/
remote: fatal: Could not switch to '/home/www/': ?????????
Branch 'master' set up to track remote branch 'master' from 'git@120.55.59.83:/opt/repo/blog.git'.
To 120.55.59.83:/opt/repo/blog.git
456ae67..c8dcf40 HEAD -> master
是不是服务器上创建的权限不对还是什么@楼主
https://xingyys.github.io/
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
https://wanttoshop.cn/
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\自行\AppData\Roaming\npm-cache\_logs\2017-06-23T10_21_27_094Z-debug.log
D:\hexo\blog>npm install hexo-server --save
npm ERR! C:\Users\自行\AppData\Roaming\npm-cache\_cacache is not a legal HTTP header value
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\自行\AppData\Roaming\npm-cache\_logs\2017-06-23T10_21_38_458Z-debug.log
一直提示这些东西
FATAL Something's wrong. Maybe you can find the solution here: http://hexo.io/docs/troubleshooting.html
Template render error: (unknown path) [Line 145, Column 23]
unexpected token: }}
at Object.exports.prettifyError
可以看出来这个是出的什么问题吗? 谢谢
warning: CRLF will be replaced by LF in .cordova/lib/npm_cache/cordova-ios/4.1.0/package/node_modules/big-integer/BigInteger.js.
The file will have its original line endings in your working directory.
是为什么呀?? 感谢感谢
error: failed to execute prompt script (exit code 1)
fatal: could not read Username for 'https://github.com': Invalid argument
试了n次都是这样,不知道哪里有问题,github地址没错啊,大家有遇到吗
http://gglinux.com。欢迎互访!
error: failed to execute prompt script (exit code 1)
fatal: could not read Username for 'https://github.com': Invalid argument
这个报错是为什么hexo deploy后报的错
https://chenxiaoqiong.github.io
还有 发表博客后用http://用户名.github.io/ 这个域名访问 应该吧博客发表在哪里
1、先查看你github远端仓库里面是否还有commit记录,如果有的话,clone下来使用git reset 就可以回退了。
2、github远端仓库里如果没有了commit记录,你查看你本地仓库,查看git的commit记录,同样使用git reset可以回退。
3、如果上面说的两种都没有commit记录了,你百度搜索下你以前的博客,有可能一些第三方平台(如推酷)有爬到你的博客。
然后再浏览器中输入http://leopardpan.github.io/就行了,我的github的账户叫leopardpan,把这个改成你github的账户名就行了
到了这一步 就可以访问github里面的那个仓库了吗 例如http://bicyclering.github.io
但是我还有一个问题。
我用的是Yilia主题,在设置头像时改了hexo\themes\yilia下的config文件,
avatar: "http://ww2.sinaimg.cn/large/7f318987jw1f72m7gv450j205k05kmx1.jpg"
但是查看的时候总是不成功。
我把这个地址放在日志内容里可以预览,请问您知道这是什么问题吗?
avatar: /img/psb.jpg 这是我写的地址
<img lazy-src="null/img/psb.jpg" class="js-avatar"> 这是网上显示的地址
### -g的前面的空格,没有加上。。。
Usage: hexo <command>
Commands:
help Get help on a command.
init Create a new Hexo folder.
version Display version information.
Global Options:
--config Specify config file instead of using _config.yml
--cwd Specify the CWD
--debug Display all verbose messages in the terminal
--draft Display draft posts
--safe Disable all plugins and scripts
--silent Hide output on console
For more help, you can use 'hexo help [command]' for the detailed information
or you can check the docs: http://hexo.io/docs/
1. 在iterm中输入 open. myname.github.io 启动不了my repo页面,反而是打开了mac电脑里的同名文件,这是哪里出错了呢?请教解决方案。
2. 在atom中hello world文档输入了内容,用iterm的hexo generate, hexo server, 本地预览不了,local 4000的网址没法打开。
3. hexo deploy 后github的文章也没有更新。
是否我的atom和hexo, Github 之间的关联没做好?
请问一下,写的文章里面,不能代码高亮怎么办啊?
http://www.ac4fun.com/2016/06/25/%E5%A6%82%E4%BD%95%E6%90%AD%E5%BB%BAHexo%E5%8D%9A%E5%AE%A2/
试了好几种方法都不行。。。
npm WARN deprecated cross-spawn-async@2.2.4: cross-spawn no longer requires a build toolchain, use it instead!
有什么解决办法吗
type: git
repository: git@github.com:xxxxx/xxxxx.github.io.git
branch: master
在冒号后面有空格
1. hexo clean , hexo g , hexo deploy 发布到github上的内容没有更新
2. 首页列表显示的是文章的整个内容而非摘要
问题二 请教下
环境:
hexo 3.2.0
node v7.0.0-pre
然后就报错。
npm WARN deprecated cross-spawn-async@2.2.4: cross-spawn no longer requires a build toolchain, use it instead!
npm WARN optional dep failed, continuing fsevents@1.0.12
hexo reploy
打开浏览器那不不可行
hexo deploy
执行后无任何反应。
```
deploy:
type:git
repo:https://github.com/yaojaa/yaojaa.github.io.git
branch:master
```
仓库也建立好了,里面没内容。 也打不开进不去。
npm install hexo-deployer-git--save
出现下面的错误:
pm ERR! Darwin 15.0.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "hexo-deployer-git--save"
npm ERR! node v4.4.3
npm ERR! npm v2.15.1
npm ERR! code E404
npm ERR! 404 Registry returned 404 for GET on https://registry.npmjs.org/hexo-deployer-git--save
.
.
.
应该如何更好的解决...