Azure Functionsの登録したFunction Appの設定を変更して、
http://<Azureで定義したApp名>.azurewebsites.net
のように、ルートディレクトリに直接アクセスしたかったけど、
http://<Function App名>.azurewebsites.net/api/<funcname>http://<Function App名>.azurewebsites.net/<funcname>
のどちらかでアクセスするしかなさそうだった。 それだと取得したドメインのトップサイトに出来ないので、
- Function AppをAzure CDN経由でアクセスできるように連携
- Azure CDNを独自ドメインと連携
のようにAzure CDNをワンステップはさんで設定してみた。
前提
下記投稿で作成したFunction Appを使用。
Function AppをAzure CDNに連携
Azure CDNを作成
Azureポータルを開き、Function Appで「ネットワーク」を選択する。

「アプリに Azure CDN を構成する」を選択する

各項目を設定して「作成」を選択する。(配信元のホスト名はFunction AppのURLが入った状態。)

作成したAzure CDNの概要で下記状態を確認する。
| ホスト名 | URL |
|---|---|
| エンドポイントのホスト名 | https://Azure CDNのURL |
| 配信元のホスト名 | https://Function AppのURL |

Azure CDNをFunction Appと連携
作成したCDNの「配信元」を開き、「配信元のパス」に「/Function Appのファンクション名」を設定する。

これで、「Function App名.azurewebsites.net/Function Appのファンクション名」を、

「Azure CDN名.azureedge.net」に連携できた。

独自ドメインと連携
あとは、Azure CDNのエンドポイントのホスト名と独自ドメインを連携させる。 今回は既に外部ドメインサービスで取得していたため、下記の手順で行う。
Azure CDNでドメイン設定
Azure CDNの「カスタム ドメイン」で取得しているドメインを設定する。

ドメインサービス側では、CNAMEにAzure CDNのエンドポイントのホスト名を設定すればいい。
