新聞中心
先放出Ghost博客項(xiàng)目地址:https://github.com/tryghost/Ghost

前言
Ghost這個(gè)博客系統(tǒng)可真是難裝,第一次裝失敗后放棄了一段時(shí)間,轉(zhuǎn)而用的JustWriting,但是這個(gè)系統(tǒng)也太精簡(jiǎn)了......之后我決定回歸ghost!我在一個(gè)國(guó)外哥們兒的博客上找到了一篇Ghost安裝參考教程,結(jié)合官網(wǎng)文檔略加修改成功安裝。后來(lái)經(jīng)歷了好幾次重裝和升級(jí),我現(xiàn)在對(duì)Ghost的安裝和配置已經(jīng)輕車熟路。順便吐槽一下,官方文檔寫(xiě)的有點(diǎn)混亂,各種鏈接跳來(lái)跳去,完全不按流程來(lái),我第一次安裝愣是沒(méi)看懂。那里面還要求用瀏覽器打開(kāi)本地2368端口進(jìn)行預(yù)覽,我VPS連個(gè)圖形界面都沒(méi)有,預(yù)覽個(gè)啥。
好了,廢話不多說(shuō),正文開(kāi)始,本文對(duì)官網(wǎng)教程做了整編,讓你輕松擁有自己的博客。
Ghost+Web服務(wù)器轉(zhuǎn)發(fā)原理介紹
官方文檔建議使用Nginx作為Ghost的前端來(lái)轉(zhuǎn)發(fā)80端口請(qǐng)求,那么Ghost的工作總流程就可以描述為:
Nginx監(jiān)聽(tīng)80端口,Ghost一直監(jiān)聽(tīng)本地127.0.0.1:2368端口,你從外網(wǎng)訪問(wèn)www.xxx.com時(shí),Nginx從80端口接收請(qǐng)求,將之轉(zhuǎn)發(fā)到本地127.0.0.1:2368端口,然后Ghost就收到訪問(wèn)請(qǐng)求了。
可是為什么不直接讓Ghost使用80端口呢卻要依賴Web服務(wù)器轉(zhuǎn)發(fā)呢?這是因?yàn)镚host需要運(yùn)行在root權(quán)限上,為了避免風(fēng)險(xiǎn),就用Nginx轉(zhuǎn)發(fā)一下。另外,Nginx畢竟是Web服務(wù)器,配置靈活、并發(fā)高,用來(lái)做Ghost的前端是非常適合的,如果你服務(wù)器上還有其他網(wǎng)站那就更要用Nginx了,不然你的80端口給了Ghost就沒(méi)法負(fù)載其他網(wǎng)站了。
?有的朋友的服務(wù)器上本來(lái)就有Apache支撐的其他網(wǎng)站,現(xiàn)在又要裝Nginx,這兩者不可能同時(shí)存在,不然80端口不夠分的,看起來(lái)好麻煩,怎么辦?這篇教程除了提供Ghost+Nginx的方案外,還提供了Ghost+Apache的方案來(lái)作為示例,不管你熟悉哪一個(gè),總有一個(gè)適合你。
Ghost采用Node.js編寫(xiě),默認(rèn)使用SQLite3數(shù)據(jù)庫(kù),非常輕量,因?yàn)槭俏募蛿?shù)據(jù)庫(kù),所以無(wú)需安裝。Ghost還有強(qiáng)大的社區(qū)支持,創(chuàng)始人本身也在用這個(gè)軟件進(jìn)行商業(yè)化運(yùn)營(yíng)提供收費(fèi)托管服務(wù),軟件開(kāi)發(fā)的流程非常規(guī)范,開(kāi)發(fā)者社區(qū)運(yùn)作井井有條,不用擔(dān)心這軟件得不到維護(hù)。
你還在使用WordPress這個(gè)大家伙嗎,趕緊投奔Ghost吧。
演示環(huán)境
系統(tǒng)配置:CentOS 6.X
首先你要有一臺(tái)VPS,并且有一個(gè)域名,這里不展開(kāi)講怎么購(gòu)買了,本文主要針對(duì)具備Linux使用基礎(chǔ)并且已有建站經(jīng)驗(yàn)的朋友。
下面的步驟假設(shè)你有一個(gè)域名,拿我的域名linuxidc.com做示例吧!
Fire up your terminal !
準(zhǔn)備步驟
Node.js的安裝
安裝4.4 LTS版的node.js,編譯安裝太麻煩,可以直接去Google搜索下載二進(jìn)制包,解壓并將得到的目錄重命名為node放入/usr/local/系統(tǒng)目錄下,然后在/etc/profile里追加一行export PATH=$PATH:/usr/local/node/bin,你可以直接編輯文件,也可以通過(guò)如下命令做到這一點(diǎn):
echo export PATH=$PATH:/usr/local/node/bin >> /etc/profile
再用source命令讓這個(gè)設(shè)置生效:
source /etc/profile
Web服務(wù)器的安裝
安裝Nginx或者Apache(httpd),自己選擇吧!這里不展開(kāi)講了,實(shí)在是太簡(jiǎn)單了。
創(chuàng)建Ghost目錄
創(chuàng)建Ghost目錄,mkdir /var/ghost
下載Ghost解壓
cd /var/ghost切換到Ghost目錄,去官網(wǎng)把Ghost軟件包下載下來(lái),然后unzip ghost-xxx.zip解壓軟件包,解壓后你會(huì)發(fā)現(xiàn)所有的文件都散在當(dāng)前目錄里了。
Ghost安裝流程
之后的步驟都在/var/ghost目錄里進(jìn)行,請(qǐng)?zhí)崆扒袚Q到root用戶,免得麻煩!
安裝相關(guān)依賴模塊
npm install --production
官網(wǎng)上的說(shuō)明里,這一步?jīng)]有加參數(shù)-g,不要亂加。既然沒(méi)有加-g,那就是本地安裝而非全局安裝,安裝位置在本目錄下的node_modules/里
初次運(yùn)行
直接啟動(dòng),讓Ghost做一些初始化操作
npm start --production
在這期間你會(huì)看到一些輸出,如果有紅色字體標(biāo)明的Error提示,說(shuō)明出現(xiàn)了錯(cuò)誤。
結(jié)束初次運(yùn)行
然后Ctrl+C關(guān)閉Ghost,我們還要繼續(xù)進(jìn)行一些設(shè)置。
設(shè)置域名
Edit config.js and change the url: to your URL. 編輯config.js文件,將production:代碼塊內(nèi)的
url: 'http://my-ghost-blog.com',
改為
url: 'http://linuxidc.com',
注意這里寫(xiě)的URL就是以后注冊(cè)賬號(hào)和登錄后臺(tái)時(shí)所用的URL,必須完全一樣,http前綴也不能省略,如果注冊(cè)時(shí)用的URL和這里的不一樣,那么就會(huì)出現(xiàn)錯(cuò)誤提示說(shuō)無(wú)權(quán)限訪問(wèn)!
優(yōu)化郵件設(shè)置
優(yōu)化下郵件設(shè)置,讓博客系統(tǒng)給自己發(fā)郵件時(shí)發(fā)件人地址更規(guī)范一些。 編輯config.js文件,將production:代碼塊內(nèi)的
mail: {},
改為
mail: { from: '"Hao Lee\'s Blog" ' },
設(shè)置Web服務(wù)器
所有請(qǐng)求linuxidc.com的連接,都將被Web服務(wù)器轉(zhuǎn)發(fā)至Ghost的2368端口。這也就允許你在同一臺(tái)服務(wù)器上擁有其他網(wǎng)站,從而互不影響。
對(duì)于Nginx用戶
打開(kāi)/etc/nginx/nginx.conf,在http語(yǔ)句塊內(nèi)追加上:
server {
listen 80;
server_name linuxidc.com;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_pass http://127.0.0.1:2368;
}
}
重啟Nginx
/etc/init.d/nginx restart
對(duì)于Apache用戶
打開(kāi)/etc/httpd/conf/httpd.conf
`#NameVirtualHost *:80`這一行取消注釋
再在文件末尾加上如下語(yǔ)句,配置請(qǐng)求轉(zhuǎn)發(fā)
ServerName linuxidc.com
ProxyRequests Off
ProxyPreserveHost On
AddDefaultCharset Off
Order deny,allow
Allow from all
ProxyPass / http://127.0.0.1:2368/
ProxyPassReverse / http://127.0.0.1:2368/
重啟httpd服務(wù),service httpd restart
完成這些后
現(xiàn)在啟動(dòng)Ghost并訪問(wèn)域名已經(jīng)能進(jìn)入博客頁(yè)面了,但下面還需要實(shí)現(xiàn)Ghost后臺(tái)運(yùn)行,不然你退了終端的話Ghost就停止了。
使用Forever讓Ghost后臺(tái)運(yùn)行
安裝forever包
npm install forever -g
啟動(dòng)Ghost用這條命令
NODE_ENV=production forever start index.js
關(guān)閉ghost用這條命令
forever stop index.js
查看運(yùn)行狀態(tài)用這條命令
forever list
注冊(cè)賬戶
用forever命令讓Ghost后臺(tái)運(yùn)行,然后瀏覽器訪問(wèn)http://www.example.com/ghost就可以看到初始化界面。
開(kāi)始注冊(cè)吧,注冊(cè)后就能使用你自己的博客了。
如果這一步提示說(shuō)沒(méi)有權(quán)限,那就是這里所用的URL和前面配置文件中所寫(xiě)的不一樣,請(qǐng)檢查下config.js文件或修改瀏覽器地址欄URL。
系統(tǒng)重啟后
系統(tǒng)重啟后別忘了啟動(dòng)Nginx或Apache,其實(shí)應(yīng)該設(shè)成開(kāi)機(jī)自啟。
然后用forever后臺(tái)運(yùn)行Ghost即可。
后記
備注
為什么不直接讓ghost監(jiān)聽(tīng)80端口,而要Web服務(wù)器轉(zhuǎn)發(fā)請(qǐng)求?
http://support.ghost.org/basic-nginx-config/
其他參考資料
-
官網(wǎng)安裝步驟:http://support.ghost.org/installing-ghost-linux/
-
基本配置:http://support.ghost.org/getting-started/#step-3:-basic-ghost-configuration
-
后臺(tái)運(yùn)行:http://support.ghost.org/deploying-ghost/#making-ghost-run-forever
-
郵件設(shè)置:http://support.ghost.org/mail/#from-address
-
第一次運(yùn)行注冊(cè):http://support.ghost.org/ghost-first-run/
鳴謝
本文的Apache配置部分參考了:https://www.centosblog.com/install-ghost-blog-platform-centos-linux/
這文章里面的1-4步和第6步很有用。
第五步寫(xiě)的有點(diǎn)怪異,我們不參考了,而是按照官網(wǎng)的做法,先啟動(dòng)Ghost讓其初始化配置文件,再對(duì)配置文件進(jìn)行編輯Edit config.js and change the url: to your URL.
網(wǎng)頁(yè)名稱:Linux下Ghost博客系統(tǒng)安裝教程
本文來(lái)源:http://m.5511xx.com/article/dpjidhd.html


咨詢
建站咨詢
