web-dev-qa-db-ja.com

CloudFlareはパスパターンに基づいて異なるオリジンを使用できますか?

AWS CloudFrontからCloudFlareに切り替えようとしています。

現在、私のWebサイトはEC2でホストされており、大きな静的ファイルはS3に個別に配置されています。 CloudFrontでは、同じドメインでWebページと静的ファイルを提供し、パスパターンに基づいて対応する場所(Origin)へのアクセスをプロキシします。つまり.

  • http://example.com/files/* => S3
  • http://example.com/* => EC2

CloudFlareでは、URL転送/リダイレクトのみが見つかりました。これは、コンテンツを直接提供する代わりに、301/302リダイレクトを訪問者に返します。 301/302リダイレクトを回避することは可能ですが、CloudFrontのようにOriginの場所を「マスク」しますか?

カスタムクライアントアプリケーションが静的ファイルにアクセスするため、301/302リダイレクトを回避する必要がありますが、アプリケーションはhttpリダイレクトをサポートしていません(はい、それはばかげているとわかります)。

7
Andy Li

これは、最近エンタープライズ機能として提供を開始したものです。 https://support.cloudflare.com/hc/en-us/articles/206190798-Using-Resolve-Override-in-Page-Rules

6
Baldur

Cloudflareワーカーを使用できます: https://developers.cloudflare.com/workers/recipes/conditional-routing/

ユースケースでは、提供されている例を使用できますが、httpヘッダーの代わりにURLパスを検査するようにロジックを変更します。

2
davidjnelson