URLリダイレクトチェーンチェッカー
URLのリダイレクトチェーンをホップごとにたどり、ステータスコード(301、302、307、308)、Location、最終URLを表示します。リダイレクトループや長いチェーンも検出します。
スキームがない場合は https:// を補います。
リダイレクトチェッカーとは?
このリダイレクトチェッカーは、URLが最終的な宛先に到達するまでに通る各ホップ(各レスポンスのステータスコード、指し示すLocation、最終URLとステータス)を表示します。リダイレクトループ、2ホップ以上のチェーン、恒久的なリダイレクトが適切な場面で使われている一時的なリダイレクトについて警告します。
リダイレクトチェッカーの使い方
- 開始URLを入力します。たとえば
http://example.comなら、HTTPからHTTPSへのルールやwwwのルールを確認できます。 - Checkを押します。
- 番号付きのホップ一覧で、ステータスコードと転送先を確認します。
- サマリー(リダイレクト数、最終URL、最終ステータス)と警告を確認します。
リダイレクトチェッカーを使うべき場面
サイト移行、HTTPS化、URL構造の変更の後に、古いURLが1回の301/308で新しいURLに到達することを確認するために使います。リクエストはCookieなしでCloudflareのデータセンターから送られるため、Cookie、ログイン状態、訪問者の国に依存するリダイレクトは確認できません。
リダイレクトチェッカーの仕組み
AlgoKitのPages Functionは、自動リダイレクトを無効にしてURLにリクエストし、ステータスとLocationヘッダーを記録して、Locationを現在のURLからの相対で解決し、これを最大10ホップまで繰り返します。各ホップは再検証され、ホストも再解決されるため、リダイレクトによってプライベートやローカルのアドレスに誘導されることはありません。チェーン内に同じURLが2回現れた場合はループとして報告されます。たどるのはHTTPリダイレクトのみで、meta refreshやJavaScriptによるリダイレクトは実行されません。
一般的な使用例
- http://やwwwなしのURLが、正規のhttps://wwwのURLで終わることを確認する。
- http → https → www → 末尾スラッシュのようなチェーンを見つけて短くする。
- ERR_TOO_MANY_REDIRECTSのループを調査する。
- 短縮URLやトラッキングリンクをクリックする前に、実際の転送先を確認する。
よくある質問
301と302のどちらを使うべきですか。
恒久的な移転には、検索エンジンにURLを引き継がせるため301または308を使います。302、303、307は一時的なものです。307/308はリクエストメソッドを保持します(POSTはPOSTのまま)が、301/302はクライアントによってGETに変えられることがあります。
チェーンは短いほうがよいのはなぜですか。
ホップのたびにユーザーは1往復分の時間がかかり、検索エンジンのクローラーもたどるホップ数には限りがあるためです。
JavaScriptやmeta refreshによるリダイレクトもたどりますか。
いいえ。Locationヘッダー付きのHTTP 3xxレスポンスのみをたどります。