我想在同一台机器上为不同的项目设置多个 node.js 服务器(但侦听不同的端口)(这样我就可以拉下任何一个来编辑代码而不会影响其他人)。但是,我希望能够在不输入端口号的情况下从浏览器访问这些 Web 应用程序,而是将不同的 url 映射到不同的端口:例如 45.23.12.01/app -> 45.23.12.01:8001。
我已经考虑为此使用node-http-proxy,但它尚不支持 SSL。我的预感是 nginx 可能是最合适的。我以前从未设置过 nginx - 我需要做什么配置?我见过的配置文件示例只涉及我没有的子域。
或者,是否有更好(稳定、轻松)的方式在同一 IP 地址下托管多个应用程序?
首先阅读维基文档。它非常全面,包括样本。我不会给你一个完整的 nginx 配置,但这里是你问题的相关部分。
server {
listen 80;
server_name example.com;
location /foo {
proxy_pass http://localhost:9000;
}
location /bar {
proxy_pass http://localhost:9001;
}
location /baz {
proxy_pass http://localhost:9002;
}
}
Run Code Online (Sandbox Code Playgroud)
应该很清楚那里发生了什么。每个位置将指定的 URI 代理到相应的 node.js 后端。
小智 1
nginx 可能是一个不错的选择。至少,这是我在我的服务器上运行的。示例配置/描述可以在这里找到: https: //blog.noort.be/2011/03/07/node-js-on-nginx.html
您基本上在 nginx 中设置不同的站点,每个站点将其流量路由到在不同端口上运行的 Nodejs 应用程序。
归档时间: |
|
查看次数: |
11430 次 |
最近记录: |