一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

云服務(wù)器|WEB服務(wù)器|FTP服務(wù)器|郵件服務(wù)器|虛擬主機|服務(wù)器安全|DNS服務(wù)器|服務(wù)器知識|Nginx|IIS|Tomcat|

服務(wù)器之家 - 服務(wù)器技術(shù) - 云服務(wù)器 - Hexo博客部署到騰訊云服務(wù)器全過程

Hexo博客部署到騰訊云服務(wù)器全過程

2022-01-04 22:06日拱一兵tan日拱一兵 云服務(wù)器

本文為大家介紹Hexo博客部署到騰訊云服務(wù)器全過程,hexo 本地搭建過程網(wǎng)上太多了,這里不再贅述!

Hexo博客部署到騰訊云服務(wù)器全過程

背景

說來也慚愧,博客已經(jīng)搭建很久了,一直免費的部署在 Coding 和 Github Pages 上,前者遷移到騰訊云 Serverless,導(dǎo)致原有的配置始終有問題,沒時間仔細(xì)研究,剛好騰訊服務(wù)器有羊毛可以褥,果斷作出遷移,至于選擇騰訊云,是因為當(dāng)初備案在騰訊云,但是購買域名是在阿里,感覺好擰巴,但是整體互不相關(guān),沒啥影響。

部署環(huán)境

環(huán)境  
本地環(huán)境 MacOS Monterey 12.0.1
服務(wù)器環(huán)境 CentOS Linux release 8.2.2004 (Core)

本地環(huán)境配置

hexo 本地搭建過程網(wǎng)上太多了,這里不再贅述,這里只是做一點鏈接服務(wù)器的準(zhǔn)備工作

生成 Git 密鑰

  1. ssh-keygen -C "[email protected]" 

一路回車,這時你應(yīng)該可以在 ~/.ssh/ 目錄下看到兩個剛剛生成好的密鑰文件:

  • 公鑰:id_rsa.pub
  • 私鑰:id_rsa

我們一會需要把公鑰的內(nèi)容拷貝到服務(wù)器上

服務(wù)器環(huán)境配置

服務(wù)器非常純凈,什么也沒有,所以我們要一點點安裝我們所需的內(nèi)容

  • Git
  • Nginx

強烈建議你重置騰訊云服務(wù)器的默認(rèn)密碼, 再進行下面操作

Git 安裝和配置

安裝

切換到 root 用戶(輸入你剛剛重置的密碼就好)

  1. su root 

首先需要安裝包的依賴

  1. yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel 
  2. yum install  gcc perl-ExtUtils-MakeMaker 

進入指定目錄(這里選擇 usr/local/src)選擇最新版本 Git (這里使用 2.34.1)下載并解壓

  1. cd /usr/local/src 
  2. wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.34.1.tar.gz 
  3. tar -zxvf git-2.19.0.tar.gz 

解壓出來的 Git 文件都是源文件,我們需要進行編譯,進入 Git 解壓目錄,進行編譯和安裝, 安裝位置(這里選擇 usr/local/git), 整個過程可能需要一定等待......

  1. cd git-2.34.1 
  2. make prefix=/usr/local/git all 
  3. make prefix=/usr/local/git install 

安裝好后,我們需要配置環(huán)境變量,打開環(huán)境變量配置文件:

  1. vim /etc/profile 

在文件底部添加 Git 安裝目錄信息,給不熟悉 Vim 的同學(xué)快速操作步驟,按照下面依次按字母就可以了(這個保姆服務(wù)有沒有很到位)

G (光標(biāo)快速到文件末尾)

o (添加新空白行并進入 Insert 模式)

粘貼下面內(nèi)容

Esc (進入 Normal 模式)

:wq(保存并退出)

  1. PATH=$PATH:/usr/local/git/bin 
  2. export PATH 

刷新環(huán)境變量,使之生效

  1. source /etc/profile 

此時 Git 應(yīng)該已經(jīng)安裝完成,可以查看 Git 版本號是否和你指定的版本一樣:

  1. git --version 

Git 新用戶與配置

創(chuàng)建 git 用戶和密碼

  1. adduser git 
  2. passwd git 

將 git 用戶添加到 sudoers 文件中, 同樣給出 Vim 快捷操作

  1. chmod 740 /etc/sudoers 
  2. vim /etc/sudoers 

/## Allow

這樣可以快速定位到如下位置:

  1. ## Allow root to run any commands anywhere 
  2. root    ALL=(ALL)       ALL 

在下面一行添加 git 用戶內(nèi)容, 保存并退出

  1. git      ALL=(ALL)       ALL 

修改回 sudoers 文件權(quán)限

  1. chmod 400 /etc/sudoers 

測試

將上面本地生成的 id_rsa.pub 公鑰內(nèi)容拷貝到遠(yuǎn)端服務(wù)器, 這個命令會默認(rèn)在遠(yuǎn)端服務(wù)器 git 用戶主目錄下生成 authorized_keys 文件 (~/.ssh/authorized_keys), 其中 server_ip 為公網(wǎng) IP,不是內(nèi)部 IP,別拷貝錯了

  1. ssh-copy-id -i ~/.ssh/id_rsa.pub git@server_ip 

此時可以通過 ssh 命令(加上 -v 命令,可以輸出詳細(xì) log)測試連接,沒問題就可以進行下一步了

  1. ssh -v git@server_ip 

博客網(wǎng)站目錄配置

創(chuàng)建博客網(wǎng)站目錄位置

同樣切換到 root 目錄,然后為博客網(wǎng)站創(chuàng)建根目錄(這里選擇 /home/hexo)

  1. su root 
  2. mkdir /home/hexo 

賦予 git 用戶權(quán)限

  1. chown git:git -R /home/hexo 

自動化配置

指定目錄位置(這里選擇 git 用戶主目錄 /home/git)創(chuàng)建一個名為 blog.git 的 bare repo

  1. cd /home/git  
  2. git init --bare blog.git 

什么是 bare repo,以及 bare repo 的一些高級使用,可以看下面這三篇文章,下面的一些細(xì)節(jié)只是不做過多介紹

  • Git Worktree 大法真香
  • Git Worktree 高級使用

一鍵生成Git Worktree 工作目錄

同樣賦予 git 用戶相應(yīng)權(quán)限

  1. chown git:git -R blog.git 

使用自動化配置,自然是要用到 Git 的鉤子函數(shù),這里我們需要 post-receive,在博客 hooks 目錄下新建該文件:

  1. vim blog.git/hooks/post-receive 

然后添加如下內(nèi)容(注意目錄匹配),保存并退出:

  1. #!/bin/sh 
  2. git --work-tree=/home/hexo --git-dir=/home/git/blog.git checkout -f 

最后,賦予這個文件可執(zhí)行權(quán)限

  1. chmod +x /home/git/blog.git/hooks/post-receive 

接下來,創(chuàng)建個鏈接,以防后續(xù) deploy 過程出錯

  1. sudo ln -s /usr/local/git/bin/git-receive-pack /usr/bin/git-receive-pack 

至此,基本的準(zhǔn)備工作就完成了,接下來我們需要處理 Nginx 的內(nèi)容

Nginx 安裝和配置

安裝

同樣切換到 root 用戶,然后安裝 nginx,并最終啟動

  1. su root 
  2. yum install -y nginx 
  3. systemctl start nginx.service 

這時,在瀏覽器中輸入公網(wǎng) IP 地址,應(yīng)該可以看到 Nginx 默認(rèn)的歡迎界面

配置

這里配置 Nginx,將所有 Http 請求都重定向為 Https 請求,這就需要我們有 SSL 證書,證書可以在云服務(wù)器上申請,并下載相應(yīng)的版本(這里選擇 Nginx 證書),下載后解壓,以我的證書為例:

  1. ├── 6317712_www.dayarch.top.key 
  2. └── 6317712_www.dayarch.top.pem 
  3.  
  4. 0 directories, 2 files 

通過 scp 命令將上述證書拷貝到遠(yuǎn)端服務(wù)器, 正常應(yīng)該將 Nginx 的證書存放在 /etc/nginx/cert 目錄下,這里選擇存放在 /home/ssl_cert 下(如果目錄不存在,請自行創(chuàng)建)

  1. scp ~/Downloads/6317712_www.dayarch.top_nginx/6317712_www.dayarch.top.key root@server_ip:/home/ssl_cert 
  2. scp ~/Downloads/6317712_www.dayarch.top_nginx/6317712_www.dayarch.top.pem root@server_ip:/home/ssl_cert 

然后打開 Nginx 的配置文件進行整體配置

  1. server{ 
  2.     listen 80; 
  3.     server_name dayarch.top; # 個人域名 
  4.     rewrite ^(.*)$ https://$server_name$1 permanent; # 重定向 
  5.  
  6. server { 
  7.     listen 443;  
  8.     server_name dayarch.top;  # 個人域名 
  9.     ssl on;  
  10.     ssl_certificate      /home/ssl_cert/6317712_www.dayarch.top.pem; # .pem 證書 
  11.     ssl_certificate_key  /home/ssl_cert/6317712_www.dayarch.top.key; # .key 證書 
  12.     ssl_session_cache    shared:SSL:1m; 
  13.     ssl_session_timeout  5m; 
  14.     ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; 
  15.     ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
  16.     ssl_prefer_server_ciphers  on
  17.  
  18.     location / { 
  19.         root   /home/hexo;  # 博客網(wǎng)站主目錄 
  20.         index index.php  index.html index.htm;  
  21.     } 
  22.  
  23.     error_page  404              /404.html; 
  24.     location = /404.html { 
  25.         root   /usr/share/nginx/html; 
  26.     } 
  27.  
  28.     error_page   500 502 503 504  /50x.html; 
  29.     location = /50x.html { 
  30.         root   /usr/share/nginx/html; 
  31.     } 

通過 nginx -t 命令進行檢查,一切正常會輸出如下結(jié)果:

  1. nginx: the configuration file /etc/nginx/nginx.conf syntax is ok 
  2. nginx: configuration file /etc/nginx/nginx.conf test is successful 

重啟 Nginx 服務(wù)

  1. systemctl restart nginx.service 

至此,所有的準(zhǔn)備工作都做完了,接下來,我們需要做一些博客配置

本地博客配置修改

我們需要將遠(yuǎn)端服務(wù)器的 Git 倉庫信息配置到 Hexo 站點配置文件(_config.yml)中

  1. deploy: 
  2.   - type: git 
  3.     repo: git@server_ip:/home/git/blog.git 
  4.     branch: master 

陸續(xù)執(zhí)行 hexo 的命令進行部署

  1. hexo clean 
  2. hexo generate 
  3. hexo deploy 

至此,距離成功,我們只差最后一步

域名解析

登陸到你購買域名服務(wù)器(比如我在阿里云),配置域名解析,將其指向我們服務(wù)器的公網(wǎng)地址:

Hexo博客部署到騰訊云服務(wù)器全過程

驗證 

接下來,你可以在瀏覽器中輸入域名,進行驗證,享受你的成果吧!

原文鏈接:https://mp.weixin.qq.com/s/Fxou_soluTL0wYU7cCg4GQ

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产一卡2卡3卡四卡精品网站 | 水蜜桃一二二区视在线 | 国产成人精品曰本亚洲77美色 | 黄动漫车车好快的车车双女主 | 好湿好紧太硬了我太爽了h 好湿好滑好硬好爽好深视频 | 国产精品资源站 | 成人快插 | 国偷盗摄自产福利一区在线 | 久久机热视频 这里只有精品首页 | 成人观看免费观看视频 | 欧美性欲| 国产毛片在线高清视频 | 欧美精品成人a多人在线观看 | 免费永久视频 | 极品主播的慰在线播放 | 国产免费美女视频 | 亚洲精品久久久久福利网站 | miaa076深田咏美在线 | 久久99re热在线观看视频 | 99成人国产精品视频 | 日本不卡高清免费v日本 | 亚洲精品久久麻豆蜜桃 | 无敌在线视频观看免费 | 日韩一卡2卡3卡新区网站 | 菠萝视频5正版在线观看 | 国产精品成人免费 | 亚洲乱码尤物193yw在线播放 | 亚洲AV无码乱码在线观看浪潮 | 国产精品久久久久a影院 | 小早川怜子视频在线观看 | 亚洲精品午夜视频 | 男男gaygays国内 | 亚洲第6页 | 韩国伊人 | 门房秦大爷在线阅读 | 亚洲成a人不卡在线观看 | 亚洲国产在线 | 丝瓜视频黄瓜视频 | 亚洲成人网页 | 国产精品国产香蕉在线观看网 | 99亚洲 |