カスタムポート番号を含むURLの解析
URLにおけるポート番号の仕組み、各プロトコルのデフォルトポート、ポートを明示的に指定すべき場合、各ツールやAPIがポート抽出をどのように処理するかを学びます。
Basic Parsing
詳細な説明
URLのポート番号
ポート番号は、ネットワークホスト上の特定のプロセスやサービスを識別します。URLでは、ポートはホスト名の後にコロンで区切られて表示されます:hostname:port。
デフォルトポート
各プロトコルにはポートが指定されていない場合に使用されるデフォルトポートがあります:
| プロトコル | デフォルトポート | 例 |
|---|---|---|
| HTTP | 80 | http://example.com(ポート80が暗黙) |
| HTTPS | 443 | https://example.com(ポート443が暗黙) |
| FTP | 21 | ftp://files.example.com |
| SSH | 22 | ssh://server.example.com |
| MySQL | 3306 | mysql://db.example.com |
| PostgreSQL | 5432 | postgres://db.example.com |
| Redis | 6379 | redis://cache.example.com |
| MongoDB | 27017 | mongodb://db.example.com |
URL APIがポートを報告する条件
ブラウザのURL APIは、デフォルト以外のポートが明示的に指定された場合のみurl.portを設定します:
new URL("https://example.com").port; // ""(空 — デフォルト443)
new URL("https://example.com:443").port; // ""(空 — デフォルトと一致)
new URL("https://example.com:8080").port; // "8080"
new URL("http://example.com:3000").port; // "3000"
一般的な開発ポート
- 3000 — React(Create React App)、Next.js、Expressのデフォルト
- 4200 — Angular CLIのデフォルト
- 5173 — Viteのデフォルト
- 5432 — PostgreSQL
- 8080 — 一般的な代替HTTP、Tomcat、Spring Boot
- 8443 — 一般的な代替HTTPS
- 9090 — Prometheus、各種管理パネル
ポート範囲
- 0–1023 — ウェルノウンポート(root/管理者権限が必要)
- 1024–49151 — 登録済みポート
- 49152–65535 — 動的/プライベートポート
ユースケース
ポート解析の理解は、Nginxなどのリバースプロキシの設定、ポートマッピングを含むDocker composeファイルの構築、マイクロサービス間の接続問題のデバッグに不可欠です。ローカル開発サーバーで作業する開発者は、非標準ポートを含むURLの解析と構築を頻繁に行います。