【问题标题】:Azure App Services cannot connect to Azure SQL DatabaseAzure 应用服务无法连接到 Azure SQL 数据库
【发布时间】:2020-09-29 04:25:16
【问题描述】:

我有一个发布到 Azure 应用服务的 API,使用 ef 核心连接到 Azure SQL 数据库。以下是步骤和问题:

  1. Azure SQL 数据库已启动并运行正常,我设置了两条防火墙规则,一条用于我的本地开发 ip,一条用于 Azure 应用程序。我可以毫无问题地从本地连接到 Azure SQL,并且我已经完成了迁移。

  2. 我从 Azure SQL 复制了连接字符串并放入 appsettings.json,从本地运行 API 并毫无问题地连接到 Azure SQL。

  3. 我将我的 API 发布到 Azure 应用服务没有任何问题,我可以看到我的应用运行正常,因为它有静态文件。

  4. 然后我转到 Azure 应用服务 => 设置/配置 => 连接字符串,根据 Microsoft 的文档创建一个新的连接字符串,其键/值与我在 appsettings.json 中使用的键/值相同: https://docs.microsoft.com/en-us/azure/app-service/containers/configure-language-dotnetcore#access-environment-variables

但问题是我做完这些后,我的 API 仍然无法正常工作,对 SQL 的 api 调用返回错误 500。

我错过了什么或做错了什么?

谢谢!

【问题讨论】:

  • 您是如何定义应用服务防火墙规则的?通过将“允许访问 Azure 服务”设置为 True?
  • 感谢 cmets CSharpRocks,我是通过添加客户端 ip 做到的,但我认为这不是正确的方法,因此通过将“允许 Azure 服务和资源访问此服务器”设置为 True 来解决,行得通。

标签: sql azure azure-sql-database azure-web-app-service connection-string


【解决方案1】:

对于寻找答案的其他人,我已按照上述步骤操作,但它仍然对我不起作用。但是当我去 Visual Studios --> Publish --> Service Dependency's --> Add Azure SQL Database That fix it for me.

【讨论】:

    【解决方案2】:

    感谢 cmets CSharpRocks,我是通过添加客户端 ip 来完成的,但我认为这不是正确的方法,因此通过将“允许 Azure 服务和资源访问此服务器”设置为 True 来解决,这样就可以了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-05
      • 1970-01-01
      • 2019-11-13
      • 1970-01-01
      相关资源
      最近更新 更多