2017-02-24 85 views
1

新功能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的這兩個網址都是的網址。

回答

2

現在已經修復。應用程序服務團隊提供了一個修復程序,它工作正常。只要確保你使用的是最新版本的代理運行時(〜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 –

2

萬一別人使這個同樣的錯誤:問題是在後端URL中的星號:它應該只是{文件名},而不是{*文件名}

這可能是一個可能的檢查輸入驗證。

帶有擴展名的文件不起作用:favicon.ico仍然返回404,但通過剝離擴展名,我得到了這個工作。

+0

感謝您的更新。我們已經驗證了一個網址錯誤,其中最終有一個擴展名,並且很快就會發布修復程序。 –

+0

這個問題的解決方案現在正在運行, –

+0

我在我的兩條路線上犯了同樣的錯誤,很好!很高興有一點驗證。 –