从express换成nginx时



我是node-js新手,现在正在寻找各种材料

从express转为nginx 时

如果里面的后端代码没有改变,这有关系吗?

像nginx或apache之类的东西似乎与后端代码无关,所以我只是想以防万一。

app.get(
"/hi",
function (req, res, next) {
res.send("hi");
},
);

在没有使用nginx的例子中,里面的代码结构几乎是这样的。如果你使用nginx,后端代码不会有什么特别的变化,对吧?

您正在描述一个反向代理用例。简单的回答是,在90%的情况下NO-您不必在nodejs代码中更改任何内容。

一个简单的配置可能是这样的:

Client -- req TCP 80 -> NGINX -- req TCP 3000 -> NODEJS EXPRESS | app.js

配置


upstream node_backend {
server 127.0.0.1:3000;
keepalive 32;
}
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://node_backend/;
proxy_set_header Host $host;
...
}
}

注:

  1. 确保以正确的方式管理NodeApp。意味着如何在系统启动或类似的情况下启动和停止它。

  2. 您可能需要在NGINX端使用HTTPS。这不会更改位置配置或proxy_pass语句。

最新更新