gpt4 book ai didi

node.js - NodeJS API 的 Nginx 配置

转载 作者:太空宇宙 更新时间:2023-11-04 00:17:17 27 4
gpt4 key购买 nike

我有一些静态文件,我已经可以访问它们,并且我有一个 api,已经在 digital ocean 中。

但是我在配置 NGINX 同时访问两者时遇到了一些问题。如果我的 api 工作,静态文件就不行。反之亦然;

我的 api 运行在端口 5000 上,我想通过 IP 地址访问该站点和 api。

请帮忙!

server {
listen 80 default_server;
listen [::]:80 default_server;

root /var/www/html;

server_name _;

location / {

try_files $uri $uri/ =404;

}

}

server {

location / {
proxy_pass http://localhost:5000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}

最佳答案

如果从相同的 IP 地址和端口访问这两种服务,则需要使用一个 server block 。理想情况下,您可以将 API 移至唯一的 URI,例如:

location / {
try_files $uri $uri/ =404;
}
location /api/ {
proxy_pass ...;
...
}

如果必须对静态文件和 API 使用重叠的 URI 空间,则可以使用 try_files 首先检查静态文件是否存在:

location / {
try_files $uri $uri/ @proxy;
}
location @proxy {
proxy_pass ...;
...
}

参见this document了解更多。

关于node.js - NodeJS API 的 Nginx 配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46298788/

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