如何搭建Ghost開源輕博客的

啥是Ghost?

一個開源的輕型博客,其具體的介紹能夠查看官方網站,這裏筆者僅寫一些實戰的東西。博客效果以下圖,能夠更換各類主題,固然也能夠自定義主題:node

  • 一個開源的輕博客系統,運行在nodejs環境中。
  • 安裝即用,方便快捷。
  • 多款主題,隨便選擇,固然,你也能夠建立自定義主題。
  • 支持郵件、雲存儲等等,npm下載你須要的任何組件
  • 過多不介紹,若是你想了解Ghost歷史,請自行查詢。

![](/content/images/2017/01/QQ--20170116150425.jpg)mysql

思路解析

  1. 首先,ghost運行在nodejs環境下, 首先你要安裝nodejs、npm(nodejs的包管理工具)。
  2. 博客的文章存放在哪呢?固然是數據庫了。因此你要搭建一臺數據庫,ghost默認數據庫爲sqlite,不過筆者仍是建議使用mysql,畢竟其餘數據庫我不熟。
  3. nodejs自己能夠當作服務器來使用,但爲了負載均衡和一個服務器搭建多站點,筆者仍是搭建了一臺nginx,而後讓nginx轉發到nodejs服務器上。
  4. 當搭建完成以後,下載ghost包,而後安裝、運行,這時,博客就搭建完成了。

真槍實幹

1.安裝環境(數據庫、Nginx服務器、nodejs、npm)nginx

apt-get update  
apt-get install mysql-server  
apt-get install nginx  
apt-get install nodejs  
apt-get install npm

輸入如下命令進行測試:sql

nodejs -v  
npm -v  
mysql --version  
nginx -v

2.下載ghost包 到 Ghost中文網 下載集成包,由於使用npm install會很慢,而且容易出錯。數據庫

3.將npm的源換成國內的源
臨時使用:npm --registry https://registry.npm.taobao.org install packagenpm

package是須要安裝的軟件包名vim

永久使用:npm config set registry https://registry.npm.taobao.org服務器

使用npm config get registry來查看是否配置成功負載均衡

4.安裝相應軟件ide

  • 解壓並進入到ghost目錄:unzip ghost.zip -d blog
  • 進入到blog:cd blog
  • 安裝相應擴展包:npm install

錯誤1:下載包時間過長,致使安裝失敗。極可能是由於換源的問題,解決方式就是換源;固然還多是你的網速的緣由。

錯誤2:sh: 1: node: not found,這是什麼緣由呢?系統中沒有這個node命令,咱們有的命令是nodejs,因此咱們只須要將cp /usr/bin/nodejs /usr/bin/node複製一份便可,這時,node命令就存在了,兩者做用同樣。

5.安裝成功

6.配置Nginx 由於咱們安裝了nginx,nginx默認監聽80端口。這時,咱們須要配置nginx,讓nginx轉發到nodejs搭建的服務器之上。

cd /etc/nginx/site-available  
vim default

修改server下location選項,讓nginx轉發到nodejs

...(省略)
server {  
    ...(省略)
    server_name "修改爲你本身的域名";
location / { 
    // 轉發到nodejs服務器之上
    proxy_pass http://127.0.0.1:2368;
    // 註釋掉下面這行,只留下上面這個參數
    // try_files $uri/ $uri/ = 404;

}
...(省略)

 

7.配置ghost相關選項 ghost根目錄下有一個配置文件,爲config.js;沒有的話複製一份config.example.js便可。

config = {  
    production: {
        url: 'http://域名',
        mail: {
            transport: 'SMTP',
            from: '郵箱@163.com',
            options: {
                host: 'smtp.163.com',
                port: 25,
                secureConnection: false,
                auth: {
                    user: '郵箱@163.com',
                    pass: '郵箱受權碼'
                }
            }
        },
// 配置MySQL 數據庫
    database: {
        client: 'mysql',
        connection: {
            host     : '127.0.0.1',
            user     : '用戶',
            password : '密碼',
            database : '數據庫',
            charset  : 'utf8'
        },
        debug: false
    },
    server: {
        host: '127.0.0.1',
        port: '2368'
    },

    //Storage.Now,we can support `qiniu`,`upyun`, `aliyun oss`, `aliyun ace-storage` and `local-file-store`
    //storage: {
    //    provider: 'local-file-store'
    //}


    // 阿里雲OSS
    storage: {
        provider: 'oss',
        bucketname: '你的bucketname',
        ACCESS_KEY: '密鑰',
        SECRET_KEY: '密鑰',
        root: '/image/',
        endpoint: 'http://oss-cn-qingdao.aliyuncs.com',  //阿里雲的上傳端點是分地域的,須要單獨設置
        prefix: 'http://blog-ghost.oss-cn-qingdao.aliyuncs.com'
    }
},

};
module.exports = config;

 

8.博客跑起來 項目根目錄下,運行

npm start --production

9.首次進入後臺須要配置若干選項 URL地址:域名/ghost

傻瓜式操做,下一步下一步安裝便可。

10.讓nodejs一直運行

npm install forever -g # 全局安裝forever工具  
NODE_ENV=production forever start index.js # 生產模式後臺運行ghost  
forever list # 查看後臺運行程序  
forever stopall # 關閉全部
相關文章
相關標籤/搜索