花费了将近十个小时,查阅了上百篇资料,终于搭建好了自己的第一个博客,就以这第一篇博客纪念我走过的坑
预览网站
系统
系统类型
Ubuntu 17.04
环境
Git 和Node.js
安装Git
使用以下命令
$ sudo apt-get install git
检查版本
$ git --version
安装Node.js
由于用apt-get的方式,后续步骤中会出现错误,建议使用源码安装,安装前应该先安装好Python和gcc等编译器安装网址:源代码安装网址
下载后使用cd命令进入文件夹,分别执行以下命令:
$ ./configure
$ make
$ make install
检查版本
$ node -v
安装npm
执行命令
$ sudo apt-get install npm
安装hexo和注册github并创建托管博客代码的仓库
安装hexo
hexo官网上给出的命令是
$ npm install hexo-cli -g
该命令本人验证会出错,可使用以下命令安装
$ sudo npm install --unsafe-perm --verbose -g hexo
hexo init blog 不能初始化的问题: (taobao源貌似不能使用)
用nrm ls命令,列出所有的可用的源,用nrm use cnpm命令,选择cnpm
若还不能使用......
用npm test命令测试所有原,找一个可用的源名称,使用npm use + 源名称命令更换就可以
博客初始化根目录
$ hexo init #初始化博客所在根目录
一些常用命令
$ cd blog #进入所在目录
$ npm install // ** 注意,一定要加这个命令!!!!否则生成的public\index.html文件可能各种空白
$ hexo g #或者hexo generate //生成静态页面
$ hexo s #或者hexo server 本地查看
打开http://localhost:4000/ 已经可以看到一篇内置的blog了
$ hexo d #或者hexo deploy //部署博客到远程
$ hexo new "postName" #新建文章
$ hexo new page "pageName" #新建页面
本地查看hexo s 命令可能出现错误log
使用如下命令可以解决
$ hexo s -s
更换主题(eg:yilia)
$ cd /blog/themes #切换到主题目录
$ git clone https://github.com/litten/hexo-theme-yilia.git themes/yilia #克隆主题到本地,可以在github上搜索主题,替换相应链接就可以了
修改Hexo目录下的 _config.yml 配置文件中的theme属性,将其设置为yilia(根据主题名称设定)
注册github
Github官网
创建账户登录之后,新建一个代码仓库,注意仓库名称为 [账户名.github.io] 格式,注意的个人主页的网站内容是在master分支下的,可以通过http://username.github.io 来访问你的个人主页
使用hexo deploy部署
如将代码部署到github,在配置文件 _config.xml中作如下修改:
deploy:
type: git
repo: git@github.com:yourname/yourname.github.io.git
branch: master
使用如下命令,即可完成部署,即可在github上创建的仓库里看到代码
$ hexo d
该处需要安装一个拓展
$ npm install hexo-deployer-git --save
使用ssh(不需要输用户名密码,只需要输入设置的密码短语即可)
参考链接
创建pubic key
$ ssh-keygen -t rsa -b 4096 -C "your_email@example.com" #该处是邮箱,大写C
在 /home/you/.ssh/id_rsa目录下(如果在选择目录时直接enter就是这个目录)会生成两个文件,id_rsa.pub和id_rsa, 然后登陆github,在SSH设置页面添加上刚才的public key文件也就是id_rsa.pub的内容即可
当Enter passphrase时,记住该语句,使用ssh时需要输这个短语,即
Enter passphrase (empty for no passphrase): [Type a passphrase]
Enter same passphrase again: [Type passphrase again]
绑定域名
$ cd source/
$ touch CNAME
$ vim CNAME # 输入你的域名
$ git add CNAME
$ git commit -m "add CNAME"
在注册商那里添加解析就可以了
参考链接:
网友评论