この記事について
この記事は、生成AIを活用した自動生成フローで作成しています。curl公式マニュアルとHTTP仕様を確認し、redirectの入口をheaderから観察し、SSOや短縮URL、リンク障害の一次切り分けへつなげる形に整理しています。検証ステータス:📘 curl・HTTP公式仕様確認済み・外部通信未検証
URLが別URLへ飛ぶとき、最初から-Lで全部追うより、まずstatusとLocationを見ると何が起きているか分かります。特にSSO、短縮URL、HTTP→HTTPS、CDNや公開URL変更では、「どこへ飛ばされたか」を見える化するだけで調査がかなり進みます。
今回の成功条件
最初のレスポンスに含まれる3xxとLocation:を確認し、-Lを付けたときにcurlがその行き先を追うことを観察できれば成功です。
まず試す
curl -sS -D - -o /dev/null https://httpbin.org/redirect/1
ここを見る
3xx statusとLocation:が出れば、そのレスポンス自身が次の行き先を指示しています。
見るポイントは3つです。
status codeは何か
Location:は相対URLか絶対URLかhost名が変わっていないか
「リンクを開くと別画面になる」という現象を、ブラウザの見た目ではなくHTTPの応答として確認できます。
1か所変えてみる
curl -sS -L -D - -o /dev/null https://httpbin.org/redirect/1
-Lを付けるとcurlがLocationを追います。headerが複数段表示される場合、途中のstatusも観察します。
次にredirect回数を変えます。
curl -sS -L -D - -o /dev/null https://httpbin.org/redirect/3
1段と3段でheaderのまとまりが増えることを確認すると、「最終URLだけを見る」のと「途中経路を見る」の違いが分かります。
なぜそうなる
HTTP redirectは、サーバーが3xx statusとLocationを返し、clientが次のrequestを判断する仕組みです。
ここで重要なのは、redirectは単なるURL置換ではないことです。301/302/303/307/308では、clientが次のrequestでmethodをどう扱うかが同じではありません。GETだけを見ていると気付きにくい差ですが、フォーム送信やAPIのPOSTでは重要です。
また、redirect先でhostが変わる場合は、認証情報やCookie、proxy、証明書、ネットワーク制御など別の条件が関係することがあります。
graph LR A[元URL] -->|3xx + Location| B[次のURL] B -->|3xx + Location| C[さらに次のURL] C -->|200など| D[最終応答]
失敗・境界条件も見る
redirectがある前提で調査しないことも大切です。
curl -sS -D - -o /dev/null https://example.com/
Location:がなければ、それ自体が結果です。さらに、DNS失敗、TLSエラー、proxy拒否などでは3xx以前で止まるため、redirectだけを疑っても解決しません。
-Lを最初から付けると最終結果だけに意識が向きやすく、途中の異常な転送先や余計なredirectを見落としやすくなります。
事務職・業務でどこに使えるか
1. 社内ポータルのリンク確認
「昔のURLをクリックすると新しいサイトへ飛ぶ」という場合、元URLがどこへ転送しているかを確認できます。部内手順書やExcelに残った古いリンクを整理するとき、単に開けるかどうかだけでなく、正式な新URLを特定する材料になります。
2. SSOの問い合わせ一次切り分け
「ログイン画面を行ったり来たりする」「認証後に元画面へ戻らない」という問い合わせでは、redirect chainが長くなっていないか、想定外hostへ移っていないかを見る入口になります。
ただし認証Cookieやtokenを含む実リクエストを安易に共有しないでください。まずは公開URLや認証前の入口で確認します。
3. メールや資料中の短縮URL確認
短縮URLをそのままブラウザで開く前に、Locationだけ確認すると最初の転送先を把握できます。これは安全性を保証するものではありませんが、「どこへ向かおうとしているか」を確認する一次チェックになります。
4. Web担当への問い合わせ材料
「開けません」だけでなく、
最初のURL
最初のstatus
Location
redirect回数
最終status
を整理すると、Web担当やベンダーへ具体的に伝えやすくなります。
仕事で使うなら
SSO、短縮URL、HTTP→HTTPS、CDN切替、古い社内リンクの調査で有効です。認証headerやCookie付きのrequestを未知のredirect先へ無条件に送らないよう、行き先を先に確認します。
業務手順としては、最初は-Lなしで入口を見る → 必要なら-Lで連鎖を見る → hostが変わる地点を確認するの順が安全です。
curl manual: https://curl.se/docs/manpage.html
RFC 9110: https://www.rfc-editor.org/rfc/rfc9110
