pig's diary

何でも忘れるので万年初心者ね

CentOS6、nginx -> node 最小構成

僕はセキュリティとかに詳しくない人間です。実運用は十分ご注意ください。

環境

さくらVPS 1G

$ cat /etc/redhat-release 
CentOS release 6.2 (Final)

nginx インストール

$ sudo vim /etc/yum.repos.d/nginx.repo
# /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
$ sudo yum install nginx
$ sudo nginx # :80 でlistenできてるか、ブラウザで確認する。「Welcome to nginx!」ならOK
$ sudo nginx -s quit

nodeでサーバを起動

$ cd
$ vim ./test_server.js
// ./test_server.js
var http = require('http');
http.createServer(function (req, res) {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('YEAH!!!!!!\n');
}).listen(3000, '127.0.0.1');
console.log('Server running at http://127.0.0.1:1337/');
$ npm install forever -g # foreverお気に入りです 何度も生き返してくれました 
$ forever start test_server.js # nodeサーバが127.0.0.1:3000で起動

nginx 設定ファイル編集

$ sudo vim /etc/nginx/conf.d/mynginx.conf # 新規ファイル
# /etc/nginx/conf.d/mynginx.conf 
server {
    listen        80;
    server_name   localhost;

    location / {
        proxy_pass    http://localhost:3000; # :3000 に投げ渡す
        break;
    }
}

nginxサーバ起動

$ sudo service nginx start # nginx サーバ起動

ブラウザで、:80 にアクセス。nodeサーバの返す「YEAH!!!!!」が表示されました。

設定、もっと

  • nginx の設定回り。もっとかっこいい設定にして、ちゃんとしたリバースプロキシサーバにする。