摘要:博客的架構先搞明白博客從搭建到自動發布的架構,才能更好的理解我們每一步進行的操作。整個搭建流程第一部分服務器環境搭建,包括安裝配置創建用戶。在裸庫的文件夾中,新建文件。
1. 博客的架構
先搞明白Hexo博客從搭建到自動發布的架構,才能更好的理解我們每一步進行的操作。
不然只跟著步驟過了一遍,卻不知道為什么這么做。
首先看這張架構圖:
整個流程就是本地將 *.md 渲染成靜態文件,然后Git推送到服務器的repository,服務器再通過 git-hooks 同步網站根目錄。
2. 整個搭建流程第一部分: 服務器環境搭建,包括安裝 Git 、Nginx配置 、創建 git 用戶 。
第二部分: 本地Hexo初始化, 包括安裝 NodeJS 、hexo-cli, 生成本地靜態網站
第三部分: 使用Git自動化部署發布博客
3. 服務器環境搭建 3-1.安裝Git和NodeJS (CentOS 環境)yum install git #安裝NodeJS curl --silent --location https://rpm.nodesource.com/setup_5.x | bash -
NodeJS 安裝可以參考: Linux安裝NodeJS
3-2. 創建git用戶adduser git chmod 740 /etc/sudoers vim /etc/sudoers
找到以下內容
## Allow root to run any commands anywhere root ALL=(ALL) ALL
在下面添加一行
git ALL=(ALL) ALL
保存退出后改回權限
chmod 400 /etc/sudoers
隨后設置Git用戶的密碼,
#需要root權限 sudo passwd git
切換至git用戶,創建 ~/.ssh 文件夾和 ~/.ssh/authorized_keys 文件,并賦予相應的權限
su git mkdir ~/.ssh vim ~/.ssh/authorized_keys #然后將電腦中執行 cat ~/.ssh/id_rsa.pub | pbcopy ,將公鑰復制粘貼到authorized_keys chmod 600 ~/.ssh/authorzied_keys chmod 700 ~/.ssh
然后就可以執行ssh 命令測試是否可以免密登錄
ssh -v git@SERVER
至此,Git用戶添加完成
3-3. Nginx安裝和配置我是用的是lnmp 一鍵安裝包,nginx安裝教程一大堆,就不再敘述。主要看nginx配置。
找到nginx的配置文件,修改配置如下:
server { listen 80; #listen [::]:80; server_name www.seekbetter.me seekbetter.me; index index.html index.htm index.php default.html default.htm default.php; #這里要改成網站的根目錄 root /path/to/www; include other.conf; #error_page 404 /404.html; location ~ .*.(ico|gif|jpg|jpeg|png|bmp|swf)$ { access_log off; expires 1d; } location ~ .*.(js|css|txt|xml)?$ { access_log off; expires 12h; } location / { try_files $uri $uri/ =404; } access_log /home/wwwlogs/blog.log access; }4. 本地Hexo程序 4-1:初始化Hexo博客
首先要安裝 hexo-cli,安裝hexo-cli 需要 root 權限,使用 sudo 運行
sudo npm install -g hexo-cli
然后初始化Hexo程序
cd ~/Documents/code hexo init blog
等執行成功以后安裝兩個插件, hexo-deployer-git 和 hexo-server ,這倆插件的作用分別是使用Git自動部署,和本地簡單的服務器。
hexo-deployer-git幫助文檔
hexo-server幫助文檔
cd blog npm install hexo-deployer-git --save npm install hero-server4-2. 生成自己的第一篇文章 hello world !
使用 hexo new <文章名稱> 來新建文章,該命令會成成一個 .md文件放置在 sources/_posts文件夾。
hexo new "hello Hexo" vim sources/_posts/hello-hexo.md
編輯完畢以后, 使用hexo g將 .md文件渲染成靜態文件,然后啟動hexo-server:
hexo g hexo server
現在便可以打開瀏覽器訪問 http://localhost:4000 來查看我們的博客了!
5. 自動化部署 5-1:服務器上建立git裸庫創建一個裸倉庫,裸倉庫就是只保存git信息的Repository, 首先切換到git用戶確保git用戶擁有倉庫所有權
一定要加 --bare,這樣才是一個裸庫。
su git cd ~ git init --bare blog.git5-2. 使用 git-hooks 同步網站根目錄
在這里我們使用的是 post-receive這個鉤子,當git有收發的時候就會調用這個鉤子。 在 ~/blog.git 裸庫的 hooks文件夾中,
新建post-receive文件。
vim ~/blog.git/hooks/post-receive #!/bin/sh git --work-tree=/path/to/www --git-dir=~/blog.git checkout -f
保存后,要賦予這個文件可執行權限
chmod +x post-receive5-3. 配置_config.yml,完成自動化部署
然后打開 _config.yml, 找到 deploy
deploy: type: git repo: git@SERVER:/home/git/blog.git //branch: master //這里填寫分支 [branch] message: 提交的信息 //自定義提交信息 (默認為 Site updated: {{ now("YYYY-MM-DD HH:mm:ss") }})
保存后,嘗試將我們剛才寫的"hello hexo"部署到服務器
hexo clean hexo generate --deploy
訪問服務器地址,就可以看到我們寫的文章"Hello hexo",以后寫文章只需要:
hexo new "Blog article name" ···寫文章 hexo clean && hexo generate --deploy
博客就更新咯!~
參考資料:使用 Git Hook 自動部署 Hexo 到個人 VPS
Hexo 文檔
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/39301.html
摘要:寫在開始一開始將自己部署到,結果發現打開頁面速度有點慢,然后又將其同時部署到實現雙線路訪問,國內解析記錄到,國外解析到,這樣確實網站的速度能提高不少,但是國內訪問因為是經過,所以打開網站會有廣告,這點不能容忍,于是想到自己的服務器也還空閑著 寫在開始 一開始將自己hexo部署到github,結果發現打開頁面速度有點慢,然后又將其同時部署到coding,實現雙線路訪問,國內解析記錄到co...
原文鏈接 隨著Vateral主題的開發接近了尾聲,在對主題速度優化的時候發現之前用的githubpage問題多多:首先就是因為在國內的原因,訪問速度本身就很慢,曾經有次加載一張16kb的圖標時間耗費了26s!!?其次,在對資源做CDN托管加速時,域名是需要備案的,顯然githubpage也是做不了的;所以果斷舍棄了這個把hexo搭建到了我的阿里云服務器上 總體來說還是比把hexo搭建到github...
摘要:原文地址作為一個天天造的人,必然要經常訪問谷歌等網站,所以前些日子買了自己搭了梯子。今天就跟大家分享一下,如何使用搭建個人博客。創建用戶,建立裸庫,配置。 原文地址:https://www.xksblog.top/use-V... 作為一個天天造BUG的人,必然要經常訪問谷歌等網站,所以前些日子買了VPS自己搭了梯子。但如果只是用VPS來搭梯子那就太浪費了,所以又折騰了一天,把自己之...
摘要:下面貼上棧長博客的地址,也是技術棧的官方博客地址今天分享一下,如何從開始搭建一個自己的技術博客,基于棧長的博客。的國內訪問不是很快,這里推薦使用自己搭建國內的云服務器,使用搭建靜態服務。 技術博客的選型有很多種,如:博客園、CSDN、開源中國、簡書、知乎等……都可以用來寫文章,形成自己的技術博客。 上面的博客都是第三方的,有沒有方式搭建自己的服務器、自己的域名的博客呢?棧長知道的成熟方...
閱讀 2723·2023-04-25 22:15
閱讀 1804·2021-11-19 09:40
閱讀 2149·2021-09-30 09:48
閱讀 3212·2021-09-03 10:36
閱讀 2025·2021-08-30 09:48
閱讀 1853·2021-08-24 10:00
閱讀 2725·2019-08-30 15:54
閱讀 698·2019-08-30 15:54