整理這些技術筆記真的很花時間,如果你願意 關閉 Adblock 支持我,我會把這份感謝轉換成更多「踩坑轉避坑」的內容給你!ヽ(・∀・)ノ
為什麼大家都用 3000?一文搞懂 Port 的用途與選擇

前言
最近有不少學生問我:「Port 是什麼?為什麼大家都用 3000?」與其一個個解釋,不如一次寫清楚:什麼是 Port、怎麼選、怎麼查,用對了不再踩雷。
Port 是什麼?
Port 中文是通訊埠,如果你是一名開發者,應該會很常看到以下的訊息
1 | |
在這邊我們所指的 Port 就是 3000、8000、8080、5000 這些數字。
那麼為什麼要有這些 Port 呢?我們都知道一台電腦對外提供服務時,都會有一組 IP 位址,但是單純持有這個 IP 位址就可以知道這個電腦提供了哪些服務嗎?答案是不能的,畢竟一台電腦上你可能有多個服務在運行,例如:
- Web Server
- Database Server
- Game Server
- FTP Server
這些服務如果都透過同一個 IP 位址來提供服務的話,使用者就無法知道要連接到哪個服務,所以就需要 Port 來區分這些服務,也因此衍生出「Port」這個概念。
舉例來講:
- Web Server 通常會使用
80Port(HTTP)或443Port(HTTPS) - Database Server 通常會使用
3306Port - Game Server 通常會使用
25565Port - FTP Server 通常會使用
21Port
當你的 IP 位址假設是 192.168.1.1,那麼這些服務的完整連接方式就會是:
- Web Server:
http://192.168.1.1:80或https://192.168.1.1:443 - Database Server:
mysql://192.168.1.1:3306 - Game Server:
tcp://192.168.1.1:25565 - FTP Server:
ftp://192.168.1.1:21
所以我們的 Port 就是用來區分這些服務的。
Port 的選擇
那麼接下來另一個問題是…
「我怎麼知道我該選擇哪個 Port?」
首先我們要先了解,Port 的範圍是從 0 到 65535,而這些 Port 實際上依用途可以分成以下三類:
| Port 範圍 | 類型 | 建議用途 |
|---|---|---|
| 0–1023 | 公認埠口 | 系統或標準協定(避免使用) |
| 1024–49151 | 註冊埠口 | 常見服務,如 MySQL、Redis |
| 49152–65535 | 動態/私有埠 | 本地測試、臨時用途 |
這些 Port 是隨便定義的嗎?
當然不是,這些 Port 都是 Internet Assigned Numbers Authority(IANA)所定義的,這些 Port 都有其特定的用途,當你不確定時,你可以到 IANA 的官方網站 查看這些你要使用的 Port 是否已經被使用。
例如…你可以查詢一下 Vite 的 Port,Vite 預設使用 5173 Port

又或者你可以試著查詢 3000 Port,這是一個許多 Web Server 預設使用的 Port

我們可以看到 3000 Port 是有被登記一套軟體叫做「RemoteWare Client RemoteWare」使用的,但是後面我們還可以看到一句話「This entry records an unassigned but widespread use」,這就代表著雖然 3000 Port 是被登記了,但是並沒有被廣泛的使用,所以我們還是可以使用 3000 Port。
所以當你不確定你的 Port 該設置為多少時,你可以先查詢一下 IANA 的官方網站,看看你要使用的 Port 是否已經被使用,若查詢後這個 Port 並沒有被廣泛使用,那麼你就可以安心使用它,不用擔心踩到標準服務的地雷。
如何檢查 Port 是否被佔用?
最後也分享一下我們開發上常常遇到的一個雷點
1 | |
這個錯誤通常代表你的 Port 已經被其他程式佔用了。
那麼我們該如何檢查這個 Port 是否被佔用呢?
假設你目前要使用的 Port 是 3000,那麼你可以使用以下指令來檢查:
1 | |
如果是 Windows 的話,你可以使用以下指令:
1 | |
如果你發現被佔用了,你可以考慮兩種方式:
- 直接改變你的 Port,例如改成
3001或3002等等。 - 參考「Mac 系統 Port 號被佔用的解決方式(Mac Port xxx is already in use)」這篇文章,來釋放被佔用的 Port。
那麼以上就是關於 Port 的基本知識與使用方式,希望對你有所幫助哩~
整理這些技術筆記真的很花時間,如果你願意 關閉 Adblock 支持我,我會把這份感謝轉換成更多「踩坑轉避坑」的內容給你!ヽ(・∀・)ノ