express+nginx

nodejs 配合 nginx 部署

首先安装express并创建一个server

参考搭建express+mysql项目(一)

安装nginx

1
$ sudo add-apt-repository ppa:nginx/stable

如果 add-apt-repository 不可用
Ubuntu <=12.04.xx

1
$ sudo apt-get install python-software-properties

Ubuntu >12.04

1
$ sudo apt-get install software-properties-common

1
2
$ sudo apt-get update
$ sudo apt-get install nginx

配置nginx

删除default文件

1
$ sudo rm /etc/nginx/sites-enabled/default

新建一个example(自定义)文件

1
2
3
4
5
6
7
8
9
10
11
12
13
server {
server_name your.domain.com;
listen 80;
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://127.0.0.1:3000;
proxy_redirect off;
}
}

创建软连接

1
$ sudo ln -s /etc/nginx/sites-available/example /etc/nginx/sites-enabled

重启

1
$ sudo service nginx reload

配合pm2

安装pm2

1
$ npm install pm2 -g

用例:

1
$ pm2 start app.js