使用 nginx 从另一台机器访问 Web 应用程序 (ASP.NET)
Access a web app (ASP.NET) from another machine using nginx
好吧,我们开始吧。
我在 Azure 中有一个 ubuntu 的实例,我正在尝试从这台机器(不是 LocalHost)访问 Web 应用程序。
首先,我安装了所有 dotnet 东西来制作测试应用程序并运行
dotnet new mvc
我检查了 Azure 机器 localhost:5000,这个应用测试运行良好。
然后我安装了 nginx 来远程访问我的应用程序。当我访问public IP时,我可以看到一个nginx的页面。
nginx Page
我已经尝试配置数千次,当我访问 public IP 时,nginx 重定向到我在 Azure Localhost 中的 Web 应用程序 运行。
我尝试过的一种配置是
/etc/nginx/sites-enabled
server {
listen 80;
location / {
proxy_pass http://localhost:5000;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
有什么想法可以实现吗?
对不起英语不好
您错过了 server_name
个参数。
如果那是配置目录中唯一的一个配置,那么还要将 default_server
option 添加到 listen 指令中,如下所示:
server {
listen 80 default_server;
server_name my.domain.com;
location / {
proxy_pass http://localhost:5000;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
将 my.domain.com
更改为您的 Azure 实例的适当 FQDN,这样您不仅可以通过在浏览器中输入 IP 地址,还可以使用主机名来发出请求。
并确保您已将该配置包含在 nginx.conf 文件中,例如:
include /etc/nginx/sites-enabled/*;
希望对您有所帮助。
好吧,我们开始吧。
我在 Azure 中有一个 ubuntu 的实例,我正在尝试从这台机器(不是 LocalHost)访问 Web 应用程序。
首先,我安装了所有 dotnet 东西来制作测试应用程序并运行
dotnet new mvc
我检查了 Azure 机器 localhost:5000,这个应用测试运行良好。
然后我安装了 nginx 来远程访问我的应用程序。当我访问public IP时,我可以看到一个nginx的页面。
nginx Page
我已经尝试配置数千次,当我访问 public IP 时,nginx 重定向到我在 Azure Localhost 中的 Web 应用程序 运行。
我尝试过的一种配置是
/etc/nginx/sites-enabled
server {
listen 80;
location / {
proxy_pass http://localhost:5000;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
有什么想法可以实现吗? 对不起英语不好
您错过了 server_name
个参数。
如果那是配置目录中唯一的一个配置,那么还要将 default_server
option 添加到 listen 指令中,如下所示:
server {
listen 80 default_server;
server_name my.domain.com;
location / {
proxy_pass http://localhost:5000;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
将 my.domain.com
更改为您的 Azure 实例的适当 FQDN,这样您不仅可以通过在浏览器中输入 IP 地址,还可以使用主机名来发出请求。
并确保您已将该配置包含在 nginx.conf 文件中,例如:
include /etc/nginx/sites-enabled/*;
希望对您有所帮助。