環境搭建
-
Git -
Node.js -
最新的 Node.js 已經集成了 npm -
npm
官網地址:node
https://nodejs.org/en/ https://git-scm.com/
開始搭建
1. 安裝 Hexo
npm install -g hexo # 經過npm安裝hexo
# -g 指定全局安裝,可使用hexo命令
2. 初始化 Hexo
hexo init blog # 初始化建立,會再桌面建立blog文件夾
cd blog # 進入blog目錄
npm install # 進一步安裝hexo所需文件
初始化後,文件夾的目錄以下:python
.
├── .deploy #須要部署的文件
├── node_modules #Hexo插件
├── public #生成的靜態網頁文件
├── scaffolds #模板
├── source #博客正文和其餘源文件等都應該放在這裏
| ├── _drafts #草稿
| └── _posts #文章
├── themes #主題
├── _config.yml #全局配置文件
└── package.json
3. 啓動 Hexo
hexo clean # 清除全部記錄 /hexo c
hexo generate # 生成靜態網頁 /hexo g
hexo server # 啓動服務 /hexo s
顯示以下圖,則運行成功。git
![](http://static.javashuo.com/static/loading.gif)
而後使用瀏覽器訪問 http://localhost:4000github
![](http://static.javashuo.com/static/loading.gif)
其實,若是你要求不高,咱們再把它部署到碼雲(gitee)上,如今也能夠說是完成了。web
4. 把博客部署到碼雲上
首先說明一下,爲何選擇碼雲,由於我也是經過 GitHub Page 實現的,不過最近 GitHub 常常性蹦,訪問也比較慢,因此我就選擇了碼雲實現一下,固然你有服務器就最好不過了。shell
碼雲(gitee):https://gitee.com/npm
4.1 註冊碼雲,建立倉庫
咱們須要在 gitee 建立本身的帳戶(若是沒有),而後再建立一個本身倉庫json
![](http://static.javashuo.com/static/loading.gif)
輸入倉庫名稱,其它默認便可,這裏由於我已經建立了。vim
4.2 生成/添加 SSH 公鑰
碼雲 Gitee 、GitHub 提供了基於 SSH 協議的 Git 服務,在使用 SSH 協議訪問倉庫倉庫以前,須要先配置好帳戶/倉庫的 SSH 公鑰。瀏覽器
配置 ssh 帳戶和郵箱
郵箱沒必要與 GitHub、Gitee 帳號相同,我的郵箱便可。
git config --global user.email *********@qq.com # 設置郵箱
git config --global user.name '****' # 設置用戶名
查看帳戶和郵箱
git config --global user.name
git config --global user.email
本地生成ssh公鑰
郵箱爲剛配置好的帳戶郵箱
ssh-keygen -t rsa -C "xxxxx@xxxxx.com"
按照提示完成三次回車,便可生成 ssh key
![](http://static.javashuo.com/static/loading.gif)
查看 ssh 公鑰
vim ~/.ssh/id_rsa.pub
# 退出
:qa!
複製公鑰去 Gitee 粘貼,添加
說明一下:
GitHub、gitlab、碼雲三個平臺可使用一個公鑰
測試是否鏈接成功
碼雲 Gitee
ssh -T git@gitee.com
以下圖所示,則表示鏈接成功
另外, GitHub 的測試代碼以下:
ssh -T git@github.com
# 表示鏈接成功
Hi 「您的用戶名」! You've successfully authenticated, but GitHub does not provide shell access.
4.3 配置鏈接 Gitee
進入到咱們新建立的倉庫,複製項目地址
![](http://static.javashuo.com/static/loading.gif)
複製 URL ,到 hexo 的配置文件 _config.yml
,相應位置修改爲以下:
deploy:
type: git # type爲git
repo: git@gitee.com:XXXXXX/blog.git # 倉庫的 URL
branch: master
注意:冒號後面必定要有空格,不然不能正確識別。
4.4 部署博客
安裝自動部署發佈工具,否則部署會報錯
npm install hexo-deployer-git --save
新建 deployer.sh 文件,輸入代碼:
hexo clean
hexo g
hexo d
一鍵部署博客
sh deployer.sh
5. Gitee Pages 設置
在項目的服務中選擇 Pages 選項
![](http://static.javashuo.com/static/loading.gif)
默認配置,點擊啓動便可
![](http://static.javashuo.com/static/loading.gif)
下圖則成功開啓,記住博客地址,以後能夠點更新進行操做
![](http://static.javashuo.com/static/loading.gif)
博客發佈成功以後,能夠訪問博客地址:xxxxxx,就可經過他提供的博客地址進行訪問,預覽在線博客啦!!
若是博客的樣式不對,則須要在_config.yml中配置下博客地址和路徑:
url: 「碼雲提供給您的博客地址」
root: /
再執行命令 sh deployer.sh
就能夠啦,以後就是美化咱們的博客了。
6. 主題配置
下載本身喜歡的主題,能夠去 github 下載壓縮包而後放到博客項目根目錄下的 themes 中。
而後配置 _config.yml
theme: 「您的主題文件夾完整名稱」
# 這裏須要注意:後面要有一個空格,名稱要和theme下的主題目錄名稱相同。
修改完成,本地運行 hexo s
測試成功便可上傳部署到 Gitee 而後點擊更新便可。
7. 自定義域名
通過上面操做,咱們用 Hexo 搭建好本身的 Blog 後,我選擇了託管在碼雲上,如今經過 https://xx0817.gitee.io/blog 這個地址就能夠訪問了。可是我想經過本身的域名進行訪問,要實現這個功能。
7.1 購買域名
這裏很少說,某裏雲、某訊雲、某爲雲均可以,看本身喜歡。
7.2 域名解析
咱們須要經過 GitHub 網址 ping 出服務器的 IP 地址。能夠在本地 cmd 中 ping。也能夠在網站上 ping。
我選擇網站 ping。
網站:http://ip.tool.chinaz.com/
訪問後輸入本身的 GitHub 部署的博客網址就能 ping 出來了。
![](http://static.javashuo.com/static/loading.gif)
進入域名購買的控制檯,在解析中添加記錄:
![](http://static.javashuo.com/static/loading.gif)
添加記錄:
主機記錄爲@,記錄類型爲A,解析線路選擇默認,記錄值設置爲上面ping出來的IP地址。最少要設置一個,我是四個所有設置了。
![](http://static.javashuo.com/static/loading.gif)
再添加記錄:
主機記錄爲www,記錄類型爲 CNAME,解析線路選擇默認,記錄值爲你的 GitHub 域名,個人爲 gdfuturexx.github.io。
![](http://static.javashuo.com/static/loading.gif)
上面設置的意思爲:
-
設置 A 記錄的意思是,當我輸入 hongxin.online 這個域名的時候,訪問的是 185.199.110.153等這4個IP地址其中一個; -
設置 CNAME 的意思是,當我訪問 gdfuturexx.github.io 這個地址的時候,會跳轉到 hongxin.online,以後的過程就和 A 記錄相同了,即訪問 185.199.110.153等4個IP地址其中一個。
7.3 添加CNAME文件
在Hexo本地文件夾的source文件夾中,增長一個名爲CNAME的無後綴文件。
若是你想地址欄中顯示www就輸入www.xxx.com,不然輸入xxxx.com(你的域名)就行。
以後從新部署便可。
7.4 GitHub Pages 綁定域名
登陸你的GitHub,進入倉庫,打開設置。
找到下圖位置,在 Custom domain 添加你的自定義域名。
以後刷新一下頁面,若是 能勾選Enforce HTTPS就要勾選上。若是不勾選的話訪問域名會顯示不安全。
![](http://static.javashuo.com/static/loading.gif)
自定義域名這段參考了:sushan102.top,這個網站中的文章
嚴格聲明
-
本項目涉及的代碼及一系列分析過程,僅用於學習交流,切勿用於任何非法用途,後果自當。
-
未經本人贊成,禁止以任何形式,在任何渠道,私自轉發或盜文
若你是無恥之人,也請帶上小弟的文章出處連接地址,抱拳抱拳!!!
若要轉載請註明出處,尊重他人勞動成果。
轉載請註明出處連接 : https://www.cnblogs.com/yizhixue-hx/
本文分享自微信公衆號 - 一直學Python(python77777)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。