Ghost的安装配置

2014年3月13日 发表评论 阅读评论

Ghost无疑是当下最火爆的纯BLOG程序,其基于 Node.js,由前 WordPress UI 主管 John O’Nolan 和 WordPress 开发人员 Hannah Wolfe 创立。自去看上线以来已经受到了很多人的追捧,Ghost 主题/模版越来越多,一些优秀的 WordPress 主题商都开始提供 Ghost 主题了。目前最新版本为0.4.1 。

一、node.js的安装

由于Ghost是基于node.js开发的,所以必须要安装node.js环境,根据不同的系统方法安装方式也略有不同。这里列下linux下三个最常用的分支的安装方法:

1、ubuntu及其衍生类

sudo apt-get update
sudo apt-get install -y python-software-properties python g++ make
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs

    2、redhat/centos等

//查看是否有EPEL源
yum repolist
//如果没有按下面的方法安装,并安装node.js
rpm -Uvh http://download-i2.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
yum install nodejs npm --enablerepo=epel

3、Debian及其分支

sudo apt-get install python g++ make checkinstall
src=$(mktemp -d) && cd $src
wget -N http://nodejs.org/dist/node-latest.tar.gz
tar xzvf node-latest.tar.gz && cd node-v*
./configure
fakeroot checkinstall -y --install=no --pkgversion $(echo $(pwd) | sed -n -re's/.+node-v(.+)$/1/p') make -j$(($(nproc)+1)) install
sudo dpkg -i node_*

我自己笔记本上的crunchbang linux属于该类,其是通过checkinstall先将node.js源码包生成deb文件后,执行dpkg -i node-xxx.deb再安装。
如果是其版本的系统请参考github上的方法

二、Ghost的安装

Ghost的官方下载页面是:

# wget https://en.ghost.org/archives/ghost-0.4.1.zip
# unzip ghost-0.4.1.zip -d ghost
# cd ghost
# npm install --production

copy一份config.example.js为config.js,将其中的127.0.0.1改为0.0.0.0(如果使用nginx或apache反向代理,该修改步骤可省略)使用npm启动ghost程序

[root@test174 ghost]# npm  start
> ghost@0.4.1 start /tmp/ghost
> node index
Ghost is running in development...
Listening on 0.0.0.0:2368
Url configured as: http://my-ghost-blog.com
Ctrl+C to shut down

完成后,其前后台界面如下:

ghostfront

ghostadmin

三、nginx反向代理

上面也提到nginx反向代理,虽然node.js像tomcat一样,可以不依赖前端web运行,不过往往我们不会这样做。nginx反向代理的配置如下:

server {
    listen 0.0.0.0:80;
    server_name ghost.com;
    access_log /var/log/nginx/ghost.com.log;
    location / {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header HOST $http_host;
        proxy_set_header X-NginX-Proxy true;
        proxy_pass http://127.0.0.1:2368;
        proxy_redirect off;
    }
}

可能遇到的报错问题:

> sqlite3@2.1.19 install /var/www/ghost/node_modules/sqlite3
> node build.js
[sqlite3]: Checking for http://node-sqlite3.s3.amazonaws.com/Release/node_sqlite3-v2.1.a-node-v11-linux-x64.tar.gz
[sqlite3]: Error: EACCES, open '/root/tmp/node-sqlite3-Release/node_sqlite3-v2.1.a-node-v11-linux-x64.tar.gz'
npm ERR! sqlite3@2.1.19 install: `node build.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the sqlite3@2.1.19 install script.
npm ERR! This is most likely a problem with the sqlite3 package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node build.js
npm ERR! You can get their info via:
npm ERR!     npm owner ls sqlite3
npm ERR! There is likely additional logging output above.
npm ERR! System Linux 3.2.0-4-amd64
npm ERR! command "/usr/local/bin/node" "/usr/local/bin/npm" "install" "--production"
npm ERR! cwd /var/www/ghost
npm ERR! node -v v0.10.26
npm ERR! npm -v 1.4.3
npm ERR! code ELIFECYCLE
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     /var/www/ghost/npm-debug.log
npm ERR! not ok code 0

上面的报错信息是我在crunchbang linux(debian的分支)时遇到的错误,在centos测试环境上未遇到该问题 。解决方法如下:

先确认安装有sqlite-devel包,确认有安装后,再执行如下的步骤:

npm install -g node-gyp
npm install sqlite3 --build-from-source
npm install --production

参考页面

codyhatch

ghost论坛




本站的发展离不开您的资助,金额随意,欢迎来赏!

You can donate through PayPal.
My paypal id: itybku@139.com
Paypal page: https://www.paypal.me/361way

分类: http/html/web, 开源软件 标签:
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.