はじめに
Cloudflareで Azure Blob ストレージをプロキシ(キャッシュ)する方法です。 これにより大量にファイルを安全に配信することが可能になります。
同じことはAzureにもCDNはありますがFreeプランはありません。そこでCloudflare でなるべくお金をかけずにやっていきましょう。
前提
Blobストレージは構築され、コンテナーに適当なファイルを配置し、アクセスレベルはコンテナで外部からアクセスできていることが前提です。
また、今回はHTTPでの通信を行うため、安全な転送を無効化します。
CloudflareによりDNSが運用できるような状態になっていること。
Blobストレージにカスタムドメインを設定
Blobストレージにカスタムドメインを設定する必要があります。この作業は必須です。
設定するドメインは cfblob.maru8.org
です。説明内にあるようにDNSにcfblob.blob.core.windows.net
をCNAMEとして登録します。
この時点で保存しても失敗します。
Azureの指示通りcfblobというドメインをCNAMEとしてCloudflareに登録します。
この時、プロキシをDNSのみの変更する必要があります。この変更を行わないとAzureでカスタムドメインの設定を完了できません。
反映までに数分かかると思います。
あとはカスタムドメインの登録に戻ります。
保存して利用できるようにします。確認としては保存したイメージへカスタムドメインを利用してアクセスしてみましょう。
アクセスして確認してみた結果は通常のServer値です。Blobから通信されていることがわかります。
次にCloudflare経由で行うようプロキシをオンにします。
再度、確認してみましょう。Server値にcloudflareが見えていることから、Cloudflare経由でアクセスしていることがわかります。
思っていたより簡単にAzure BlobストレージをCloudflareで公開することが可能でした。今回は、HTTPで構成していますが、当然適切に証明書を取得して登録することによりHTTPSでの利用も可能です。
まとめ
Azure BlobストレージをCloudflareを利用して公開する方法を紹介しました。Azure CDNでも同様のことが行えますが、シンプルな設定であったり価格面、またはセキュリティ面でも優位に立つ可能性があり有効活用していければと思います。