M3U8 ホットリンク保護にとって重要なヘッダーはどれですか?
| ヘッダ | どうあるべきか | いつ使用するか |
|---|---|---|
| Referer | ストリームが通常再生されるページ URL。 | オリジンが直接の .m3u8 リクエストを拒否するか、403 を返す場合に使用します。 |
| User-Agent | オリジンに送信されるクライアント ID。 | オリジンがブラウザーを許可するが、ボットまたは不明なクライアントを拒否する場合に使用します。 |
| Origin | リクエスト元の Web アプリのオリジン。 | 通常、これはブラウザまたはプロキシに任せます。エンドポイントを制御する場合を除き、偽装しないでください。 |
| Cookie | 元のサイトからのセッション状態。 | ストリーム ワークフローを所有している場合以外は避けてください。このプレーヤーは Cookie を要求しません。 |
M3U8 をカスタム Referer でプレイする方法
- 1
元の再生ページを見つける
ストリームが通常動作するページをRefererとして使用します。 .m3u8 URL 自体を Referer として使用しないでください。
- 2
M3U8 URL を貼り付けます。
マニフェストをプレーヤーに貼り付け、カスタム ヘッダーなしで一度再生を試みて、ベースラインを確立します。
- 3
CORS プロキシを有効にする
カスタム Referer および User-Agent の転送にはプロキシが必要です。これは、ブラウザではページ スクリプトが直接メディア リクエストにこれらのヘッダーを設定できないためです。
- 4
Referer と User-Agent を設定します
高度なヘッダー コントロールを開き、元のページ URL を Referer として貼り付け、オリジンがクライアントをフィルターする場合にのみ、通常のデスクトップ ブラウザ User-Agent を追加します。
- 5
ヘルスレポートを実行する
同じプロキシ/ヘッダー パスを介してストリームを検証して、マニフェスト、キー、またはセグメントがまだブロックされているかどうかを確認します。
ブラウザプレーヤーがRefererを直接設定できない理由
ブラウザは Referer や User-Agent などのヘッダーを保護します。 Web ページは、直接の HLS セグメント リクエストに対してそれらを自由に書き換えることはできません。このため、このツールはオプションのプロキシを介してカスタム ヘッダーを転送します。ブラウザはプロキシと通信し、プロキシは選択したヘッダーを使用して HLS オリジンと通信します。
通常機能する Referer 値
ビデオが埋め込まれている正規ページ URL (https://example.com/watch/123 など) を使用します。 CDN ドメインまたは .m3u8 URL は、オリジンが期待する実際のページでない限り使用しないでください。ソース ページがリダイレクトされる場合は、ブラウザのアドレス バーに表示される最後の URL を使用します。
ホットリンク保護をCORSから判断する方法
CORS は、ブラウザによる応答の読み取りをブロックします。ホットリンク保護により、ヘッダーがそのポリシーに一致しない限り、オリジンはリクエストを拒否します。プロキシが CORS を修正しても、オリジンが依然として 403 を返す場合は、Referer を追加します。 Referer が設定された後に再生が開始される場合、ストリームはホットリンクで保護されています。
関連する HLS デバッグ ページ
- HLS CORS エラー ブロックされたブラウザ要求に CORS ヘッダーまたはプロキシが必要な場合について説明します。
- M3U8 リンクのトラブルシューティング デッドリンクと保護されたリンクに関する広範な障害チェックリストをカバーしています。
よくある質問
M3U8 ストリームにカスタム Referer を設定できますか?
はい。プロキシを有効にし、高度なヘッダー コントロールを開き、ストリームが通常再生されるページ URL を Referer として設定します。プロキシはその Referer を HLS オリジンに転送します。
なぜブラウザは Referer を直接設定できないのでしょうか?
Referer と User-Agent は保護されたリクエスト ヘッダーです。ブラウザーの JavaScript は、直接のメディア要求に対してヘッダーを自由に書き換えることができないため、カスタム ヘッダーのテストには、サーバー側でヘッダーを転送するプロキシが必要です。
ホットリンクで保護された HLS にはどの Referer を使用すればよいですか?
.m3u8 URL ではなく、ストリームが埋め込まれている元の Web ページ URL を使用してください。多くのオリジンは、マニフェスト、キー、またはメディア セグメントを提供する前にそのページをチェックします。
User-Agentも変更する必要がありますか?
オリジンがクライアントによってフィルタリングされている場合のみ。 Referer だけから始めて、ストリームがまだ拒否される場合は通常のデスクトップ ブラウザ User-Agent を追加します。
カスタム Referer は DRM で保護されたストリームでも機能しますか?
いいえ。Referer はホットリンク保護に役立ちますが、 Widevine、FairPlay、または PlayReady などの DRM システムをバイパスしません。