一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

Ghost的安装配置图文教程

时间:2014-03-13 编辑:简简单单 来源:一聚教程网

 一、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(如果使用nginxapache反向代理,该修改步骤可省略)使用npm启动ghost程序

 代码如下 复制代码

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

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

ghostfront

ghostadmin

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 www.111com.net
    [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

热门栏目