本身第一次配置nginx,過程當中參考這裏。這篇文章就當本身的一個筆記把過程記錄下來。node
有一臺阿里雲服務器和本身的域名(jackyang.me),想要在服務器上部署多個node express應用:blog和game。可是又不但願在訪問時經過端口號來區分不一樣的應用(例如:jackyang.me:3000爲blog應用,jackyang.me:3001爲game應用)。那麼就能夠使用nginx來完成,訪問時都經過默認的80端口,根據域名的不一樣,在nginx裏轉發到各自的應用中去。nginx
Please google it.
運行一下,在瀏覽器中輸入jackyang.me,若是看到這個畫面,你就裝好了。express
sudo /usr/local/nginx/sbin/nginx
sudo mkdir /etc/nginx/jackyang.me sudo touch /etc/nginx/jackyang.me/blog.conf
其配置文件內容以下:瀏覽器
# upstream name is blog.jackyang.me # and my blog express app is running under port 3000 upstream blog.jackyang.me { server 127.0.0.1:3000; keepalive 8; } # the nginx server instance server { listen 0.0.0.0:80; server_name blog.jackyang.me; 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; # value for proxy_pass has to match upstream name proxy_pass http://blog.jackyang.me/; proxy_redirect off; } }
sudo touch /etc/nginx/jackyang.me/game.conf
其配置文件內容以下:服務器
# upstream name is blog.jackyang.me # and my blog express app is running under port 3000 upstream game.jackyang.me { server 127.0.0.1:3001; keepalive 8; } # the nginx server instance server { listen 0.0.0.0:80; server_name game.jackyang.me; 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; # value for proxy_pass has to match upstream name proxy_pass http://game.jackyang.me/; proxy_redirect off; } }
下面須要在nginx的啓動配置中引入上面建立的兩個配置文件:app
sudo vi /usr/local/nginx/conf/nginx.conf
在http塊中添加一條include語句便可:google
... http { ... include /etc/nginx/jackyang.me/*.conf; ... } ...
sudo /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
這裏須要提早裝node的forever,以避免terminal退出後服務器進程就停掉了。而且要按照上面配置的,blog運行在3000端口,game運行在3001端口上。阿里雲
forever start /var/www/jackyang.me/blog/server.js forever start /var/www/jackyang.me/game/server.js
要能經過blog.jackyang.me和game.jackyang.me訪問對應的應用,還差最後一步,即在域名解析中添加和啓用blog和game這兩條記錄。一下是我在阿里雲中的配置:spa