我正试图像微软官方教程一样将NGINX配置为反向代理:https://learn.microsoft.com/pt-br/aspnet/core/host-and-deploy/linux-nginx?view=aspnetcore-5.0
但在IIS中,我可以将我的应用程序配置为这样访问:http://localhost/name.of.app/
IIS通过IP公开应用程序,如下所示:http://192.168.x.x/name.of.app/
我发现在NGINX工作的唯一方法如上所述:
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name appname.*;
index index;
location / {
proxy_pass http://127.0.0.1:5000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
但通过这种方式,应用程序:
- 未暴露在外部
- Url如下所示:http://appname.localhost
在这个地狱里,我需要做什么才能像IIS一样配置和工作?
提前谢谢。
问题已解决。在NGINX使用中:location /appname
并在asp.net中添加app.UsePathBase("/appname");