在Azure Web App上打开其他端口

时间:2017-04-20 09:51:57

标签: azure azure-web-app-service

我最近将.NET Web API 2应用程序从Azure云服务移动到Azure Web App。但是,我们有一个遗留应用程序需要与端口8080和444上的API通信。

有没有办法在网络应用上打开其他端口?

6 个答案:

答案 0 :(得分:3)

不,你不能。只有端口80和443处于打开状态。

在服务器故障上检查此答案:https://serverfault.com/a/751548/394375

如果您需要该控件,则可以使用云服务或虚拟机。

答案 1 :(得分:0)

不,正如junnas所说,只有80或443个Tcp端口已经被开发。我们还可以从document获取有关WebApp沙箱的更多详细信息。

  

所有Azure Web应用程序(以及移动应用程序/服务,WebJobs和函数)都在称为沙箱的安全环境中运行。通过互联网访问应用程序的唯一方法是通过已经公开的HTTP(80)和HTTPS(443)TCP端口。   但是,应用程序可能会创建一个可以从沙箱中侦听连接的套接字。

答案 2 :(得分:0)

如此处所述:https://docs.microsoft.com/en-us/azure/load-balancer/tutorial-load-balancer-port-forwarding-portal,您可以使用azure负载平衡器实现端口转发。

答案 3 :(得分:0)

虽然Azure Web App无法公开端口8080和444,但是您可以使用应用程序网关导出这些端口,并将8080和444上的传入流量路由到Web App的端口80或443。

答案 4 :(得分:0)

您可以将应用程序配置为使用其他端口。基于the answer on Github

自动端口检测会检测到端口(默认为端口80),我们将尝试检测要绑定到您的容器的端口,但是您也可以使用WEBSITES_PORT应用设置并将其配置为您所使用的端口的值想要绑定到您的容器。但是,自定义映像中的Web服务器可能使用的端口不是80。您可以通过使用WEBSITES_PORT应用设置将自定义容器使用的端口告知Azure。在这种情况下,是的,您将不得不从门户更改应用程序设置配置。

答案 5 :(得分:0)

如果您考虑对应用程序进行容器化和部署:

默认情况下,App Service假定您的自定义容器正在侦听端口80。如果您的容器侦听其他端口,请在App Service应用程序中设置WEBSITES_PORT应用程序设置。您可以通过Cloud Shell进行设置。在Bash中:

az webapp config appsettings set --resource-group <group-name> --name <app-name> --settings WEBSITES_PORT=8000

App Service当前允许您的容器仅公开一个用于HTTP请求的端口。

来源:https://docs.microsoft.com/en-us/azure/app-service/configure-custom-container?pivots=container-linux#configure-port-number