gpt4 book ai didi

asp.net - NGINX 没有为第二台服务器加载资源

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:18:24 25 4
gpt4 key购买 nike

我是 NGINX 的新手(总体上很好托管),所以请原谅我的无知。我有一个在 localhost:4000 上运行的 Phoenix Web 应用程序和一个在 localhost:5123 上运行的 ASP.NET Web 应用程序。我正在尝试利用 NGINX 创建反向代理,以便可以从同一域访问任一 Web 应用程序。我的 NGINX 配置文件包含以下内容:

server {
listen 80;
server_name example.com;

location / {
proxy_pass http://localhost:4000;
}

location /test {
rewrite /test(.*) /$1 break;
proxy_pass http://localhost:5123;
}
}

我可以访问 example.com/ 上的服务器 1 和 example.com/test 上的服务器 2,但是,服务器 2 无法加载其自己的 css、javascript 和图像文件。有没有办法通过 NGINX 配置设置确保服务器 1 和服务器 2 使用它们自己的资源?

最佳答案

你走对了。您的第二项服务缺少一些行:

替换...

location /test {
rewrite /test(.*) /$1 break;
proxy_pass http://localhost:5123;
}

与...

location /test {
rewrite /test/(.*) /$1 break;
rewrite ^/test$ /test/ permanent;
proxy_pass http://localhost:5123/;
proxy_redirect / /test/;
proxy_set_header Host $host;
proxy_buffering off;
}

我不知道这是否是实现此目标的最佳方式。很久以前,我使用这个配置在我的服务器上实现了一个 etherpad 服务。那时我没有使用子域的选项。无论如何 - 为您的第二项服务使用子域会更好。

关于asp.net - NGINX 没有为第二台服务器加载资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47677832/

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