Azure的功能应用代理的Blob存储帐户

问题描述:

新功能proxy feature做实验,我与配置为代理一个HTTP 500错误如下:Azure的功能应用代理的Blob存储帐户

路由模板: /内容/ {*文件名}

后端网址:https://my-storage-account.blob.core.windows.net/public/ {* filename}

后端只是blob存储帐户上的公共容器。

我试过带或不带文件扩展名的文件:favicon.ico和一个名为test的文本文件。

请求https://my-function-app.azurewebsites.net/content/favicon.ico产生一个404

请求https://my-function-app.azurewebsites.net/content/test(该文件,而不称为 “测试” 的扩展),产生一个HTTP 500错误。

我在做什么错?

注意:我通过在host.json中使用routePrefix选项删除了/ api /前缀 - 这对我所有的函数都适用。通过添加/ api /请求上面的网址,会得到404的这两个网址都是的网址。

现在已经修复。应用程序服务团队提供了一个修复程序,它工作正常。只要确保你使用的是最新版本的代理运行时(〜0.1),也从0.0.5升级ROUTING_EXTENSION_VERSION到最新版本(目前0.0.6)

更多信息:https://www.linkedin.com/pulse/reverse-proxy-using-azure-functions-proxies-thiago-cust%C3%B3dio?published=t

+0

谢谢。代理是一个很棒的功能,很好地扩展了功能应用的功能! – Nathan

+0

一旦我更新了ROUTING_EXTENSION_VERSION –

万一别人使这个同样的错误:问题是在后端URL中的星号:它应该只是{文件名},而不是{*文件名}

这可能是一个可能的检查输入验证。

带有扩展名的文件不起作用:favicon.ico仍然返回404,但通过剥离扩展名,我得到了这个工作。

+0

感谢您的更新。我们已经验证了一个网址错误,其中最终有一个扩展名,并且很快就会发布修复程序。 –

+0

这个问题的解决方案现在正在运行, –

+0

我在我的两条路线上犯了同样的错误,很好!很高兴有一点验证。 –