ネットワーク/HTTP
URL Parser
URLを構成要素に分解します — プロトコル、ホスト、ポート、パス、クエリパラメータ、フラグメント。
A URL is made of several parts — protocol, host, port, path, query parameters, and a fragment — that are easy to mix up when reading a long link. This tool breaks a URL down into those parts and shows each one separately.
How to use it
- Paste any URL and it's split into protocol, host, port, path, query parameters, and fragment (#) instantly.
- Query parameters are listed as separate key-value pairs, even when there are many or they repeat.
- The port is shown explicitly even when the URL doesn't specify one (in which case the protocol's default applies — 80 for HTTP, 443 for HTTPS).
Common uses
- Quickly reading a long link cluttered with dozens of tracking parameters (utm_*, ref, fbclid, and so on).
- Checking exactly which host and port a link from someone else will actually open.
- Debugging redirects or malformed URLs in code — you can see exactly which part differs from what's expected.
Things to keep in mind
The fragment (the part after #) is never sent to the server — it's a purely client-side part of the URL the server never even sees.
Hosts with non-ASCII characters (Cyrillic, CJK) are actually transmitted over the network in punycode (xn--...), even when the browser's address bar shows plain letters.
よくある質問
URLの「host」と「origin」の違いは何ですか?
hostはドメインとポートのみです(example.com:8080)が、originにはスキームも含まれます(https://example.com:8080)。2つのURLが同じoriginを共有するには、この3つすべてが一致する必要があります。
解析されたパスが入力したものと異なって見えることがあるのはなぜですか?
ブラウザやパーサーはURLを正規化します — 「./」や「../」セグメントを圧縮したり、一部のパーセントエンコード文字をデコードしたり、素のドメインに末尾のスラッシュを追加したりするため、解析結果は解決された正規形を反映します。
ここでURLを解析すると、どこかに送信されますか?
いいえ。解析はネイティブのURL APIを使ってブラウザ内で完全に行われます — サーバーには何も送信されません。
URLのuserinfoとは何ですか、なぜ危険なのですか?
ホストの前にある「user:password@」の部分は認証情報のためのものですが、攻撃者はこれを使ってフィッシングリンクを偽装します。https://accounts.google.com@evil.com/ は実際にはGoogleではなくevil.comにつながります。
一部のURLでホストがxn--で始まる無意味な文字列に見えるのはなぜですか?
これは国際化ドメイン名(IDN)のためのpunycodeエンコードです — キリル文字やCJK文字など非ASCII文字を含むドメインを、古いDNSシステムに対応した形式で表す方法です。