2018-01-28

Azure FunctionsのURLに/apiの文字がつく件について

タイトルの通りなのだが、標準の設定でfunctionを作ると以下のようなURLになってしまう。

https://sample.azurewebsites.net/api/helloworld

ドメインのすぐ下の/apiが邪魔なのだが、設定項目を読んでも取り除き方はわからない。AzureStorageのときのようにProxiesを使ってみる方法も考えたが、いくら試してみてもうまく動かなかった。

解決策はAzure WebjobsのIssuesに記載されていた。Functionsでも同様に使える方法だったが、これでは検索しても出ないわけだ。こういう大切なことはちゃんとドキュメントに書いておいてほしい。

{
  "http": {
    "routePrefix": ""
  }
}

という内容を host.json ファイルに書くことで解決する。host.jsonはKuduからCMDを開いてD:\home\site\wwwrootディレクトリに格納されており、Kudu上で編集することができる。