摘要:寫在開(kāi)始一開(kāi)始將自己部署到,結(jié)果發(fā)現(xiàn)打開(kāi)頁(yè)面速度有點(diǎn)慢,然后又將其同時(shí)部署到實(shí)現(xiàn)雙線路訪問(wèn),國(guó)內(nèi)解析記錄到,國(guó)外解析到,這樣確實(shí)網(wǎng)站的速度能提高不少,但是國(guó)內(nèi)訪問(wèn)因?yàn)槭墙?jīng)過(guò),所以打開(kāi)網(wǎng)站會(huì)有廣告,這點(diǎn)不能容忍,于是想到自己的服務(wù)器也還空閑著
寫在開(kāi)始
一開(kāi)始將自己hexo部署到github,結(jié)果發(fā)現(xiàn)打開(kāi)頁(yè)面速度有點(diǎn)慢,然后又將其同時(shí)部署到coding,實(shí)現(xiàn)雙線路訪問(wèn),國(guó)內(nèi)解析記錄到coding,國(guó)外解析到github,這樣確實(shí)網(wǎng)站的速度能提高不少,但是國(guó)內(nèi)訪問(wèn)因?yàn)槭墙?jīng)過(guò)coding,所以打開(kāi)網(wǎng)站會(huì)有廣告,這點(diǎn)不能容忍,于是想到自己的服務(wù)器也還空閑著,于是想到可以部署到自己的服務(wù)器上,折騰開(kāi)始
演示站點(diǎn)
個(gè)人使用的環(huán)境
本地環(huán)境: Windows10(64位)
云主機(jī):阿里云ECS(CentOS 7.2 64位)
整個(gè)部署過(guò)程
本地環(huán)境搭建(git,NodeJs,hexo..)
云主機(jī)環(huán)境搭建(git,Nginx)
設(shè)置解析(dnspod)
使用git自動(dòng)化部署博客
本地環(huán)境搭建安裝git
安裝hexo(這些步驟省略)
生成ssh公鑰(之前生成過(guò)的也就不用再執(zhí)行了,比如部署在github上填寫過(guò)rsa密鑰就不需要再進(jìn)行這一步了)
在命令行終端執(zhí)行如下命令
ssh-keygen -t rsa -C "郵件地址"
生成的文件默認(rèn)在~/.ssh目錄中,看到有id_rsa,id_rsa.pub這些文件即可
云主機(jī)環(huán)境搭建
安裝git及nodejs
yum install git #安裝NodeJS curl --silent --location https://rpm.nodesource.com/setup_5.x | bash -
創(chuàng)建git賬戶
adduser git chmod 740 /etc/sudoers vim /etc/sudoers
添加內(nèi)容
找到
## Allow root to run any commands anywhere root ALL=(ALL) ALL
添加以下內(nèi)容
git ALL=(ALL) ALL
保存退出并改回權(quán)限
chmod 400 /etc/sudoers
設(shè)置git賬戶密碼
sudo passwd git
切換至git用戶,創(chuàng)建 ~/.ssh 文件夾和 ~/.ssh/authorized_keys 文件,并賦予相應(yīng)的權(quán)限
su git mkdir ~/.ssh vim ~/.ssh/authorized_keys #然后將本地電腦中執(zhí)行 cat ~/.ssh/id_rsa.pub | pbcopy ,將公鑰復(fù)制粘貼到 authorized_keys chmod 600 ~/.ssh/authorzied_keys chmod 700 ~/.ssh
在本地終端中測(cè)試是否能免密登錄git
ssh -v git@SERVER
其中SERVER為填寫自己的云主機(jī)IP
創(chuàng)建目錄
# repo 作為為git倉(cāng)庫(kù)目錄 mkdir -R /var/repo # hexo 作為網(wǎng)站根目錄 mkdir -R /var/www/hexo
配置nginx(當(dāng)然Apache也是可以的,nginx的安裝步驟省略)
首先輸入ngixn -t找到配置文件,我的是在/etc/nginx/nginx.conf,配置SERVER
server { listen 80; # server_name 填寫自己的域名 server_name www.fayne.cn; # 這里root填寫自己的網(wǎng)站根目錄 root /var/www/hexo; index index.html index.php index.htm; #/usr/local/tomcat/webapps/Forum # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { } location ~ .php$ { } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }設(shè)置解析
在dnspod設(shè)置解析記錄,設(shè)置解析A記錄www解析到服務(wù)器IP地址, 解析線路默認(rèn)
設(shè)置CNAME解析使www解析到xxx.github.io,解析線路國(guó)外,這里的xxx為hexo部署在github的倉(cāng)庫(kù)名稱,這樣保證了在國(guó)外訪問(wèn)速度也是極佳的
使用git自動(dòng)化部署博客自動(dòng)化部署主要用到了git-hooks同步
服務(wù)器建立裸庫(kù),這里要用git用戶登錄,確保git用戶擁有倉(cāng)庫(kù)所有權(quán)
su git cd /var/repo/ git init --bare blog.git
使用 git-hooks 同步網(wǎng)站根目錄
在這里我們使用的是 post-update這個(gè)鉤子(也有可能是post-receive,具體進(jìn)入文件就知道了),當(dāng)git有收發(fā)的時(shí)候就會(huì)調(diào)用這個(gè)鉤子。 在 /var/repo/blog.git 裸庫(kù)的 hooks文件夾中
vim /var/repo/blog.git/hooks/post-update # 編輯文件,寫入以下內(nèi)容
#!/bin/sh git --work-tree=/var/www/hexo --git-dir=/var/repo/blog.git checkout -f
保存后,要賦予這個(gè)文件可執(zhí)行權(quán)限
chmod +x post-update
配置_config.yml,完成自動(dòng)化部署
打開(kāi)_config.yml, 找到deploy
deploy: type: git repo: github: git@github.com:Finhoo/Finhoo.github.io.git www: git@www.fayne.cn:/var/repo/blog.git branch: master
保存后,即可測(cè)試部署
hexo clean && hexo g -d
至此,我們已經(jīng)成功部完成,并且訪問(wèn)自己的服務(wù)器端比訪問(wèn)github快多了,國(guó)外速度也是很好
常見(jiàn)問(wèn)題我在部署過(guò)程中,執(zhí)行 hexo d發(fā)現(xiàn)部署老是出錯(cuò),什么權(quán)限不允許之類的,這里我們需要檢查我們?cè)谏鲜龅膅it操作部署是否使用了git用戶操作,若是沒(méi)有,需要給相應(yīng)的目錄更改用戶組
使用chown -R git:git /var/repo/這條命令遞歸的將repo目錄及其子目錄用戶組設(shè)置為git,同時(shí)chown -R git:git /var/www/hexo,這樣即可解決此類問(wèn)題
阿里云VPS搭建自己的的Hexo博客
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/39630.html
原文鏈接 隨著Vateral主題的開(kāi)發(fā)接近了尾聲,在對(duì)主題速度優(yōu)化的時(shí)候發(fā)現(xiàn)之前用的githubpage問(wèn)題多多:首先就是因?yàn)樵趪?guó)內(nèi)的原因,訪問(wèn)速度本身就很慢,曾經(jīng)有次加載一張16kb的圖標(biāo)時(shí)間耗費(fèi)了26s!!?其次,在對(duì)資源做CDN托管加速時(shí),域名是需要備案的,顯然githubpage也是做不了的;所以果斷舍棄了這個(gè)把hexo搭建到了我的阿里云服務(wù)器上 總體來(lái)說(shuō)還是比把hexo搭建到github...
摘要:提示,如果需要通過(guò)實(shí)現(xiàn)服務(wù)器自動(dòng)化部署,推薦使用會(huì)更方便一些然后在目錄初始化本地倉(cāng)庫(kù)并提交到這時(shí)候上已經(jīng)有我提交的代碼了。再新建一個(gè)文件處理部署相關(guān)腳本,內(nèi)容如下將新增的與兩個(gè)文件到服務(wù)器。 這篇文章將如何搭建hexo,以及如何通過(guò)git webhooks實(shí)現(xiàn)遠(yuǎn)程vps的自動(dòng)部署 這篇文章適合的條件: 簡(jiǎn)單的用于個(gè)人博客、公司博客展示,hexo的定位是靜態(tài)博客,要實(shí)現(xiàn)動(dòng)態(tài)服務(wù)器的功能...
摘要:既然對(duì)感覺(jué)不錯(cuò),那為什么要把博客從遷移到上呢。可以參考此文檔進(jìn)去可以選擇中文安裝所有必備的應(yīng)用程序安裝完成后,即可使用安裝。插件安裝完成后,執(zhí)行下列命令來(lái)遷移所有文章。部署代碼到清除緩存文件和已生成的靜態(tài)文件。 偶然的機(jī)會(huì)看到了Hexo,就深深被吸引了,加載速度快,支持Makedown,還支持部署到Github上。作為一位PHP程序員,之前的博客用的是PHP開(kāi)發(fā)的WordPress,其...
閱讀 4275·2021-09-26 10:11
閱讀 2674·2021-07-28 00:37
閱讀 3227·2019-08-29 15:29
閱讀 1189·2019-08-29 15:23
閱讀 3130·2019-08-26 18:37
閱讀 2471·2019-08-26 10:37
閱讀 603·2019-08-23 17:04
閱讀 2350·2019-08-23 13:44