2011年6月3日 星期五

[教學] nginx 設定 proxy server 用於node.js app. Set ngnix proxy server.

最近使用NodeJS開發程式,但是每次的網域都非常的醜,要使用xxx.xxx.xxx:8000,後面一定都要加上port號,以下解說如何在nginx 底下設定proxy 。

環境:
Ubuntu server 11.04
Nodejs 0.4.0
nginx

PS. 假設大家都已經學會如何使用Node.js,以及設定Nginx,操作linux



修改設定檔
path: /etc/nginx/sites-available
filename: xxx.xxx.xxx,範例為www.clonn.com
sudo /etc/nginx/sites-available/www.clonn.com

內容修改

upstream test_app_1 {
        server 192.168.0.102:8000;
}
server {
        listen   80; ## listen for ipv4; this line is default and implied
        listen   [::]:80 default ipv6only=on; ## listen for ipv6

        # Make site accessible from http://localhost/
        server_name www.clonn.com;

        location / {
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_set_header Host $http_host;
          proxy_set_header X-NginX-Proxy true;
          proxy_pass http://test_app_1/;
          proxy_redirect off;
        }
}

連結設定檔
path: /etc/nginx/sites-enabled
ln -s /etc/nginx/sites-available/www.clonn.com /etc/nginx/sites-enabled/www.clonn.com

重新啟動Nginx
sudo /etc/init.d/nginx restart

接著啟動自己的NodeJS,port設定為8000,DNS server 可以mapping 後,測試一下xxx.xxx.xxx是否正常運作。

以上設定完畢,感謝收看。

沒有留言:

張貼留言

Facebook