寫在前面
- 之前一直在
上寫博文,一次改粉絲可見性,有一篇整理了三年的CSDN
被博文
吃了>_<|||,就給我留了幾個字。CSDN
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAzNfRHLGZkRGZkRfJ3bs92YsYTMfVmepNHLuVzVZVjVzQGbo1mYo50MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL1ITM0MzN1gTM4IjNwEjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
那天晚上傷心了好久,覺也沒睡,費了好多時間,還是上學時就開始寫的,也有一些小夥伴收藏,是以吸取教訓,想自己搞一個備份。自己搭一個部落格系統,在
Github
上托管,後期會放到
Gitee
上,現在
Gitee
上的
Gitee Page
功能不支援。
Github
上大多時候是通路不到的。
- 本篇
主要是關于自己搭建的過程,遇到的坑的一些總結,給小夥伴提供一些避坑經驗。同時上傳了自己的代碼,可以直接拉去我的快速搭建。博文
- 筆記由兩部分内容構成:
和部落格展示
。不足之處請小夥伴留言。具體的搭建教程
💪💪 部落格搭建思路:基于
hexo
+
Amazing
來實作,本地寫好 markdown 之後,在本地将 markdown 渲染成 HTML,然後将渲染好的 HTML 上傳到服務端(Github )。是以不需要
資料庫
,
生産部署
不需要環境,很友善。在本地搭建的時候需要
Node.js
、
Git
環境。
💪💪 關于
hexo
:
Hexo
是一個快速、簡潔且高效的
部落格架構
。Hexo 使用
Markdown
(或其他渲染引擎)解析文章,在幾秒内,即可利用靓麗的主題生成靜态網頁。建議小夥伴移步官網了解下:
https://hexo.io/zh-cn/docs/Amazing
主題:是一個基于主題
icarus
基礎之上的一個主題,個人比較喜歡。了解更多請移步
https://github.com/removeif/hexo-theme-amazing💪💪 如果小夥伴想自己學着搭建,建議小夥伴直接按照官網教程來搞,很easy,這裡分享一些
避坑經驗
- [X] 本地的搭好的部落格系統代碼,不要和渲染的
放到一個HTML
庫裡,不然本地的搭建代碼會被屏蔽掉。本地的代碼如果沒有其他用,可以不上傳Github
倉庫。Github
- [X] 關于
主題中,Amazing
評論子產品
等碎碎念
需要申請issue
授權,這裡可以參考 使用說明系列(部署中有問題此issue讨論):https://github.com/removeif/hexo-theme-amazing/issues/16Gitub用戶端
- [X] 推薦一篇關于部落格搭建的部落格 不用花一分線,松哥手把手教你上線個人部落格
💪💪 如果小夥伴想友善一點,也可以直接拉我的代碼,按照下面的部署方式就可以了。
💪💪 關于搭建好部落格系統如何
寫文章
,其實特别友善,需要指定檔案夾建立一個
markdown
檔案,内容如下:
title: 标題
top: 1
toc: 是否顯示目錄
recommend: 文章推薦權值
keywords: 關鍵字
date: 2019-09-19 22:10:43 日期
thumbnail: https://cdn.jsdelivr.net/gh/removeif/blog_image/img/2019/20190919221611.png 封面圖檔
tags: 工具教程 标簽
categories: [工具教程,主題工具] 分類
博文摘要
<!-- more -->
博文正文
之前就啥都不用管了,一且OK了.
嘻嘻,先展示一下我的成果,然後我們談談如何搭建
部落格展示
💪 我的部落格位址:
https://liruilongs.github.io/💪 部落格代碼:
https://gitee.com/liruilonger/blog_demo🎈🎈🎈🎈 PC端🎈🎈🎈🎈
首頁
歸檔
部落格閱讀
🎈🎈🎈🎈 平闆🎈🎈🎈🎈
部落格閱讀(主題跟換)
留言牆
🎈🎈🎈🎈 手機端🎈🎈🎈🎈
首頁 | 音樂 | 标簽 | 關于 | 分類 |
---|---|---|---|---|
| | | | |
具體的搭建教程
💪 預設小夥伴已經安裝了
Node.js
Git
環境。并且
Node版本
滿足要求,
Git配置了SSH免密
。具體的環境要求參考官網:
https://hexo.io/docs/🎈🎈下面我們愉快的開始吧🎈🎈
💪 Git Bash 執行:
$ git clone [email protected]:liruilonger/blog_demo.git
💪 在
blog_demo
目錄下進入
cmd
執行
npm install
themes
目錄同樣執行
cd ./themes
npm install
💪 如果以上出現問題,可以按照錯誤提示或百度,自行解決。
🎈🎈🎈🎈 做到這一部我們的部落格架構就已經搭建完成啦 🎈🎈🎈🎈
💪 下面就是生成靜态檔案
hexo g
💪 啟動伺服器。預設情況下,通路網址為:
http://localhost:4000/
hexo s
控制台列印:
D:\code\blogger\blogger\themes>hexo s
INFO Validating config
Inferno is in development mode.
Inferno is in development mode.
INFO =======================================
██╗ ██████╗ █████╗ ██████╗ ██╗ ██╗███████╗
██║██╔════╝██╔══██╗██╔══██╗██║ ██║██╔════╝
██║██║ ███████║██████╔╝██║ ██║███████╗
██║██║ ██╔══██║██╔══██╗██║ ██║╚════██║
██║╚██████╗██║ ██║██║ ██║╚██████╔╝███████║
╚═╝ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝ ╚══════╝
=============================================
INFO === Checking package dependencies ===
INFO === Checking theme configurations ===
INFO === Registering Hexo extensions ===
INFO Start processing
INFO Hexo is running at http://localhost:4000 . Press Ctrl+C to stop.
INFO Good bye
🎈 🎈 之後我們就可以在本地通路啦。🎈 🎈
部署教程:
結合Github Page 釋出靜态html
💪 小夥伴可以參考官方文檔
https://hexo.io/zh-cn/docs/one-command-deployment,我們這裡也是采用這種方式部署。
💪 預設小夥伴已經有個Github 賬戶,并且已經申請Github 用戶端的
ID
密匙
,關于
Github 用戶端的授權申請(可以在這裡找一下)💪 這裡需要修改釋出的Github 庫為自己的庫:
https://gitee.com/liruilonger/blog/blob/master/_config.yml#L104,并且這個庫已開通
Github Page
。關于
Github Page
請自行百度。
deploy:
type: git
repo: [email protected]:LIRUILONGS/LIRUILONGS.github.io.git # 自己的庫URL
branch: master #部署的分支
🎈 🎈 之後我們就可以使用指令部署了,部署完成之後就可以根據
Github Page
通路啦🎈 🎈
hexo d
💪 OK這樣我們就完成了簡單部署,可以通過
Github Page
中的URL通路就OK啦,一般為
# https://liruilongs.github.io
https://<Github 使用者名 >.github.io
💪
日常寫作
中,我們可以在寫完部落格之後,
編譯
,然後
釋出
,就會直接推送到我們的
Github Page
的庫裡面。
hexo g
hexo d
D:\code\blogger\blogger\themes>hexo g
INFO Validating config
Inferno is in development mode.
Inferno is in development mode.
INFO =======================================
██╗ ██████╗ █████╗ ██████╗ ██╗ ██╗███████╗
██║██╔════╝██╔══██╗██╔══██╗██║ ██║██╔════╝
██║██║ ███████║██████╔╝██║ ██║███████╗
██║██║ ██╔══██║██╔══██╗██║ ██║╚════██║
██║╚██████╗██║ ██║██║ ██║╚██████╔╝███████║
╚═╝ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝ ╚══════╝
=============================================
INFO === Checking package dependencies ===
INFO === Checking theme configurations ===
INFO === Registering Hexo extensions ===
INFO Start processing
INFO Files loaded in 2.45 s
INFO Generated: album/index.html
INFO Generated: media/index.html
INFO Generated: about/index.html
INFO Generated: message/index.html
INFO Generated: content.json
INFO 5 files generated in 3.07 s
D:\code\blogger\blogger\themes>hexo d
INFO Validating config
Inferno is in development mode.
Inferno is in development mode.
INFO =======================================
██╗ ██████╗ █████╗ ██████╗ ██╗ ██╗███████╗
██║██╔════╝██╔══██╗██╔══██╗██║ ██║██╔════╝
██║██║ ███████║██████╔╝██║ ██║███████╗
██║██║ ██╔══██║██╔══██╗██║ ██║╚════██║
██║╚██████╗██║ ██║██║ ██║╚██████╔╝███████║
╚═╝ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝ ╚══════╝
=============================================
INFO === Checking package dependencies ===
INFO === Checking theme configurations ===
INFO === Registering Hexo extensions ===
INFO Deploying: git
INFO Clearing .deploy_git folder...
INFO Copying files from public folder...
INFO Copying files from extend dirs...
warning: LF will be replaced by CRLF in 20
Amazing
主題中
評論留言
功能的
Github
相關修改,請小夥伴參考
Amazing
主題作者的
README.md有問題的小夥伴歡迎交流。
結合雲伺服器ESC釋出教程
💪 這裡的話如果小夥伴有自己的伺服器,那更友善了,直接把靜态檔案傳的伺服器上就可以。可以使用
Python3
自帶的子產品,也可以使用
Nginx
tomcat
Web 伺服器
來部署。下面就這幾種方式來和小夥伴聊聊
python3 的方式
💪 Python3 搭建Python自帶的
Web伺服器
特别友善,隻需要
一行指令
就可以搞定。 在需要部署的靜态檔案夾下執行
python3 -m http.server 端口号, 端口号不指定預設是8000
💪 通路搭建的靜态Web伺服器方式: IP:端口 ,沒有python3環境的可以
yum -y install python3
💪 1. 下面我們開始吧。首先把上面本地編譯好的靜态檔案上傳的自己的ESC。即
public
檔案夾打包,上傳伺服器解壓。
## 建立一個檔案夾存放靜态檔案
mkdir public && cd public
## 上傳靜态檔案包
rz -y # Xshell 上傳檔案,需要lrzsz,沒有的可以 yum -y install lrzsz 安裝一下
## 解壓靜态檔案包
unzip public.zip
## 啟動服務,這裡需要在阿裡雲配置自己的安全組政策,開放 8084 端口
python3 -m http.server 8084
🎈 🎈 這樣我們已經搭好了,之後我們就可以在通路啦。🎈 🎈
# http://39.97.241.18:8084/
http:IP:8084/
Nginx的方式
💪如果小夥伴的Esc上有Nginx伺服器,那更友善了,上傳完靜态檔案,隻需要修改一下配置檔案
root
配置字段就可以了,重新開機一下服務就可以搞定了。這次我們還用之前的上傳的檔案,不在上傳了,一般靜态檔案要上傳到
Nginx
的
html
檔案夾下。
# 打開配置檔案
$ vim /etc/nginx/nginx.conf
💪修改配置檔案
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root #上傳檔案的位置;
.......
💪或者也可以這樣
server {
listen 80 default_server; #監聽端口
server_name localhost; # 配置服務名
# 比對/請求 ,/是根路徑請求,會被該location比對到并且處理
location / {
root /usr/share/nginx/html; #上傳檔案的位置
index index.html index.htm; #配置首頁檔案的名稱
}
......
💪重新開機服務
# 重新開機服務
systemctl restart nginx.service
# http://39.97.241.18:80
http:IP:80/
Tomcat 的方式
Tomcat
這裡不做太多講解,搞
java
的小夥伴應該都不陌生。直接把靜态檔案丢到
webapp
目錄下,重新開機
tomcat
就OK啦
我的部落格位址: