- English
- 日本語
TLS 終端
最終更新日 2022-04-07
TLS 終端されたリクエストの識別
Fastlyでは、最適なキャッシュパフォーマンスを維持するため、キャッシュエンジンとは別の TLS ターミネーターを使用します。しかし、これでは元々 TLS リクエストであったことをキャッシュエンジンは識別できません。そのため、Fastly はお客様のサーバーからコンテンツを取得する際に Fastly-SSL
ヘッダーを設定しています。
このヘッダーを設定したため、次のようなものを vcl_recv
サブルーチンに含めることで、バックエンドでのヘッダーの存在を確認することができます。
1if (req.http.Fastly-SSL) {2 set resp.http.X-Is-SSL = "yes";3 }
これにより、リクエストが TLS リクエストかどうかが分かります。
WordPress を使用する場合
Fastly TLS サービスを WordPress で使用している場合、WordPress が CSS や JS アセットの URL を正しく構築できるよう HTTP_FASTLY_SSL
ヘッダーのチェックを追加することをお勧めします。そのためには以下のように wp-config.php
ファイルにチェックを置き、後でチェックされる SSL フラグをオーバーライドするようにします。
1if (!empty( $_SERVER['HTTP_FASTLY_SSL'])) {2 $_SERVER['HTTPS'] = 'on';3 }
通常どおり、これは wp-settings.php
を含む require_once
行より前のどこかに置かなければなりません。
TLS 終端の使用時に元の IP アドレスを特定する
Fastly はパフォーマンス向上のため、キャッシュエンジンとは別に TLS ターミネーターを使用しており、復号化されるとオリジンサーバーへの再リクエストによりエンジンが元の IP アドレスを一時的に上書きし、元の IP アドレスを参照するものはすべて 127.0.0.0/8 の IP アドレス として表示されます。以下のようにして VCL で元の IP アドレスを特定することができます。
- オリジンシールドを使用している場合は
req.http.Fastly-Client-IP
を使用します - オリジンシールドを使用しない場合や ACL を構築している場合は
client.ip
を使用します
また Fastly はクライアント IP アドレスを Fastly-Client-IP
の HTTP ヘッダーでオリジンに送信し、サーバーソフトウェアはこれを使用して必要に応じて調整することができます。
翻訳についての注意事項
このフォームを使用して機密性の高い情報を送信しないでください。サポートが必要な場合は、サポートチームまでご連絡ください。このフォームは reCAPTCHA によって保護されており、Google のプライバシーポリシーと利用規約が適用されます。