Reporting APIヘッダージェネレーターとは
Reporting APIは、CSP違反、Network Error Loggingイベント、非推奨警告、ブラウザ介入、クラッシュレポートなど、さまざまな問題に関するレポートを収集し、設定可能なエンドポイントに送信するブラウザAPIです。HTTPヘッダー(Report-ToまたはReporting-Endpoints)を使用して、ブラウザにレポートの送信先を指示します。Reporting-Endpointsヘッダーは新しい標準で、従来のReport-Toヘッダーを置き換えます。ブラウザはレポートをバッチ処理し、ネットワークオーバーヘッドを最小化するために定期的に送信します。
クイックアンサー
NginxおよびApache用のReport-ToおよびReporting-Endpoints HTTPヘッダーを生成します。従来のReport-Toと新しいReporting-Endpoints構文を選択できます。オプションでCSP report-uri/report-toディレクティブとNetwork Error Logging(NEL)ヘッダーを設定します。Reporting API(Chrome 69+、Safari 16.4+、Edge 79+)は、CSP違反、NELイベント、非推奨警告、ブラウザ介入、クラッシュレポートを中央エンドポイントで収集します。
Last updated: 2026-05-31
制限事項
- Reporting-Endpointsヘッダーのサポートはブラウザによって異なります。Chromeはバージョン69+、Safariは16.4+、Edgeは79+からサポートしています。FirefoxのReporting-Endpointsサポートは限定的です。より広いブラウザ互換性には、従来のReport-Toヘッダーが引き続き必要です。
- レポートの配信は保証されていません。ブラウザはレポートをバッチ処理し、独自のスケジュールで送信します。バッチが送信される前にユーザーがタブを閉じると、レポートが失われる可能性があります。重要な監視をReporting APIに依存せず、サーバーサイドログと併せて補助データソースとして使用してください。
- レポートエンドポイントはHTTPS経由でアクセス可能である必要があります。ブラウザはHTTPSで提供されるサイトからのHTTPエンドポイントへのレポート送信を拒否します。カスタムレポートコレクターを使用するGitHub Pagesサイトは、コレクターが有効なTLS証明書を持っていることを確認する必要があります。
Sources:MDN Web Docs · W3C Specifications · jquery.app on GitHub
使い方
- ヘッダーバージョンを選択します。広い互換性には従来のReport-To、新しい標準にはReporting-Endpoints。Reporting-Endpointsはよりシンプルですが、ブラウザサポートが新しいものです。
- サーバータイプ(NginxまたはApache)を選択し、生成されたヘッダー設定をサーバー設定、バーチャルホストブロック、または.htaccessファイルにコピーします。
- オプションでCSPレポーティングを有効にし、CSPディレクティブタイプ(report-uri、report-to、または両方)を選択します。生成されたスニペットには適切なCSPレポーティングディレクティブが含まれます。
- オプションでNetwork Error Logging(NEL)を、レポートエンドポイントURL、キャッシュ期間、成功/失敗サンプリングレートとともに設定します。
主な用途
- 中央エンドポイントでCSP違反レポートを収集し、正当なコンテンツをブロックせずにContent Security Policyを監視および微調整します。
- Network Error Loggingレポートを監視して、実際のユーザーが経験するネットワーク障害、DNS問題、TLSエラー、接続問題を検出および診断します。
- ブラウザがサポートを削除する前に更新が必要なサイト上の機能を特定するために、非推奨警告とブラウザ介入レポートを受信します。