我已将我的存储帐户设为私有,并且仅允许从选定的虚拟网络或 IP 地址进行访问。
从那时起,我无法运行我的函数,并且它失败并出现错误
500 internal server error
,这并不是很重要。 尝试查看诊断控制台以获取更多信息错误,我发现了这一点:
[Error] System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
不太有帮助。
我确信这与 netowkring 问题有关。 所以我想在我的函数应用程序上配置 Vnet。我尝试过的事情:
Outbound traffic configuration
但是我收到错误消息:
Failed to save subnet ERROR: Delegations of subnet "mysubnet name" cannot be chnaged from [] to [Microsoft.Web/serverFarms] because it is being used by the resource pe-kv-nll-dev-we-01.nic.888888889-80c0.......
然后我还尝试添加您在上面看到的服务端点
Microsfot.Web
,但也没有成功。
我有什么想法可以这样做吗?我是函数应用程序的新手,也许我应该将存储帐户的 IP 地址添加到我的函数应用程序的出站地址下?如果是的话我该怎么做?
要解决 Azure Function App 中的网络问题,请创建至少包含两个子网的虚拟网络,其中一个用于入站配置,另一个用于出站配置:
打开您的存储帐户 > 网络 >
Enabled from selected virtual networks and IP addresses
和subnet 1
,添加您的设备互联网IP,功能应用程序入站IP,选中例外部分。
Outbound internet traffic
、Content Storage
字段,如上面的屏幕截图所示。Public Network Access
字段,如下所示:简单来说,
WEBSITE_VNET_ROUTE_ALL
应用程序设置配置为 1
。结果: