gpt4 book ai didi

node.js - 使用 Nginx 和路由将端口转发到 Node.js 应用程序

转载 作者:搜寻专家 更新时间:2023-10-31 22:59:41 24 4
gpt4 key购买 nike

我在 localhost:3000 上运行我的 Node 应用程序,它为路由 / 提供默认页面。如果我访问 http://localhost:3000,默认页面会相应显示。我还运行了一个基本配置如下的 Nginx 服务器:

server {
listen 80;
server_name localhost;

location /node_app {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

如果我现在运行 http://localhost/node_app,我的 Node 应用程序会抛出一个错误,指出它找不到路由 /node_app

我如何配置我的 Node 应用程序或 nginx 服务器,以便我可以通过调用 http://localhost/node_app 访问应用程序,但应用程序本身认为它在 /?

更新

如果我将 / 添加到 http://127.0.0.1:3000 它实际上是将 /node_app 匹配到 / 路线。但是现在默认页面中的每个样式表现在都指向错误的路径。

最佳答案

经过一些试验后,我终于得到了正确的配置,可以按照我希望服务器的方式工作:

server {
location /node_app/ {
proxy_pass http://localhost:3000/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

经验教训:记住斜杠!

关于node.js - 使用 Nginx 和路由将端口转发到 Node.js 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20220846/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com