nodejs-nginx-proxy

这篇文章仅仅是Mark,供自己以后使用。

一般来说使用node.js开发的webapp都不会是默认的80端口,以官方文档演示为例

var http = require('http');  
http.createServer(function (req, res) {  
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
}).listen(1337, '127.0.0.1');

使用的是1337端口,用户必须在网址后加入:1337才能访问站点,一般默认HTTP端口是80,监听80端口能让网址看起来更简洁。我在linode上配置了LNMP环境,使用的是nginx,需要使用反向代理,配置nginx反向代理的代码参考如下。 比如说我的某域名为 fitbit.is26.com ,node.js的通讯端口为1337,则:

server{  
listen 80;  
server_name fitbit.is26.com;  
index index.html index.htm index.php default.html default.htm default.php;

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:1337/;  
proxy_redirect off;  
}
}

将网站域名设置好,然后端口设置为80,将所有从fitbit.is26.com:80的请求传递到nodejs程序去。 保存nginx conf文件后,记得要restart nginx,方能生效。

支付宝扫码打赏 微信打赏

若你觉得我的文章对你有帮助,欢迎点击上方按钮对我打赏

扫描二维码,分享此文章

罗磊's Picture
罗磊

前端工程师,深圳人,广州暨南大学,目前就职于上海阅文集团(原腾讯文学)用户体验部,视频自媒体 ZUOLUOTV 制作人,写原创博客八年,简书推荐作者,跑过6场马拉松,骑行过318国道,跟着老婆全世界乱逛,微信公众号「罗磊啰嗦」