在Azure Web App中发布MVC应用程序

罗尼

这是我的Azure配置:

  1. 我有一个带有几个子网的虚拟网络和一个配置为允许点对站点的网关。
  2. 有一个安装了SQL Server(2014)的虚拟机。已经有一些数据库了。将SQL Server设置为允许SQL Server和Windows身份验证模式。该虚拟机位于虚拟网络中
  3. 我有一个空的Azure Web应用程序

我将主MVC WebApp部署到了空的Azure Web App,并且看起来不错,除非它尝试从数据库中检索信息。

是连接字符串错误吗?否则可能还有其他事情...

我的连接字符串如下所示:

<add name="MyEntities" connectionString="metadata=res://*/Data.MyModel.csdl|                                                                                                                    res://*/Data.MyModel.ssdl|                                                              res://*/Data.MyModel.msl;provider=System.Data.SqlClient;
                                                                                                                    provider connection string=&quot;
                                                                                                                        data source=tcp:10.0.1.4;
                                                                                                                        initial catalog=MyDataBase;
                                                                                                                        persist security info=False;
                                                                                                                        user id=MySystemAdmin;
                                                                                                                        password=SystemAdminPassword;
                                                                                                                        multipleactiveresultsets=True;
                                                                                                                        App=EntityFramework&quot;" 
                                                                providerName="System.Data.EntityClient" />

这是Azure Web应用程序引发的错误...

在此处输入图片说明

因此,这似乎与我提供连接字符串的方式或端点/防火墙配置有关。

罗尼

其他答案为我提供了寻找解决方案的指南。

我将尝试描述我遵循的步骤:

  1. 使用新的Azure门户(当前正在预览portal.azure.com),我在Azure Web App和虚拟网络之间建立了连接:
    • 主页>浏览>单击Azure Web App名称
    • 在Azure Web App刀片中,单击“网络”磁贴
    • 在“虚拟网络”刀片中,单击数据库所在的虚拟网络(重要的是要提到虚拟网络应该事先配置了网关
  2. 我的意图是通过将虚拟机放置在虚拟网络中来为具有数据库的VM提供一定级别的安全性,因此我没有考虑开放端口。事实证明,这是必要的,因此在VM中:

    • 我使用Sql Server配置管理器为SQL Server启用了TCP / IP协议(此处的操作方法为?

    • 然后,我创建了一个新的入站规则,该规则打开了1433端口,但仅用于私人连接(非常好)。

    • 不必在VM中为此端口创建端点(对此非常满意)。
  3. 最后,我使用问题中所示的连接字符串将应用程序发布到Azure Web应用程序(带有内部数据库IP)

最后一点:在新的Azure门户> Azure Web App>设置中,我能够输入连接字符串。在门户中创建的设置不会被覆盖;因此,现在我确定此Azure Web App将始终使用正确的连接字符串。

最后说明:理论上(尚未测试),只要VM没有停止(取消分配),内部IP就不会更改

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将.NET Core 2.0 Web应用程序发布到Azure App Service时出错

如何使用Azure管道发布Web应用程序?

在 Azure Web App MVC 应用程序请求上启用 http2

发布到Azure Web应用程序子应用程序失败并出现409错误

无法在MVC 6 Web Api应用程序中发布任何数据

WindowsCryptographicException:在 Azure 中发布应用程序时拒绝访问

在IIS中发布Web应用程序出现不同的错误

Azure Service Bus发布/订阅到多个Azure Web应用程序实例

在Azure Web应用中发布出现服务器错误

如何以.NET中发布Web应用程序的方式发布Windows应用程序?

Azure CDN Web应用程序404

在 Azure 中公开 Web 应用程序

从Azure Web应用程序运行Perl

Azure Web应用程序显示403

Azure Web 应用程序乏味

Web应用程序的Azure应用程序网关

Azure Web应用程序中的多个应用程序

使用发布管道将 Asp.net 核心 Web 应用程序部署到 azure vm

如何在Azure DevOps中为Node.js Web应用程序创建发布管道?

发布ASP.NET Core Web应用程序之前应在Azure上配置什么?

错误:Azure B2C通过Web应用程序通过发布方法创建用户

在Azure上发布.net Core 2.0 Angle Spa Web应用程序时出错

通过命令行错误将 Web 应用程序发布到 Azure

将C#控制台应用程序发布为Azure Web作业

发布或重新启动后,Azure Web应用程序非常慢

将代码发布到 Azure Web 应用程序中的自定义文件夹

在新标签页中以发布数据作为标题打开azure Web应用程序URL

Azure AD应用程序未出现在Azure Web应用程序的现有AD App列表中

使用Visual Studio 2017在Azure App Service中发布ASP.NET应用程序后获取HTTP错误404