網站是怎麼運作的?
你每天打開瀏覽器、輸入網址、看到商品頁面——這一切在幾百毫秒內就完成了。但背後到底發生了什麼事?
情境:客戶說「網站打不開」
你是電商平台的業務,客戶打電話來說:「我輸入你們的網址,但網站打不開!」
你需要跟工程師回報這個問題。但你要怎麼描述?是 DNS 出問題?是伺服器掛了?還是網路斷了?
學完這課,你就能聽懂工程師在說什麼,甚至能幫忙初步判斷問題出在哪一步。
網站運作的三步驟
當你在瀏覽器輸入 shop.example.com,背後會發生三件事:
| 步驟 | 做什麼 | 生活比喻 |
|---|---|---|
| 1. DNS 查詢 | 把網址翻譯成 IP 位址 | 像查電話簿,把「王小明」翻成「0912-345-678」 |
| 2. 送出請求 | 瀏覽器用 IP 位址找到伺服器,發送請求 | 撥電話給對方 |
| 3. 收到回應 | 伺服器把網頁內容傳回瀏覽器 | 對方接電話,告訴你要的資訊 |
第一步:DNS — 網址翻譯機
DNS(Domain Name System)就是網路世界的電話簿。
人類記得住 shop.example.com,但電腦只認得 IP 位址(像 203.104.1.55)。DNS 負責把「人類看得懂的網址」翻譯成「電腦看得懂的 IP 位址」。
第二步:發送請求(Request)
瀏覽器拿到 IP 後,會向伺服器送出一個「請求(Request)」。請求裡包含你要什麼:
第三步:收到回應(Response)
伺服器收到請求後,回傳一個「回應(Response)」。回應裡有狀態碼和內容:
常見的 HTTP 狀態碼
當工程師說「回 404」或「噴 500」,他們在說的是 HTTP 狀態碼:
| 狀態碼 | 意思 | 白話翻譯 |
|---|---|---|
| 200 | OK | 一切正常 |
| 301 | Moved Permanently | 網頁搬家了(永久轉址) |
| 404 | Not Found | 找不到這個頁面 |
| 500 | Internal Server Error | 伺服器內部出錯(工程師要看 log) |
| 503 | Service Unavailable | 伺服器忙不過來 |
本課重點
- 網站運作三步驟:DNS 查詢 → 發送請求 → 收到回應
- DNS 就是網址翻譯成 IP 的電話簿
- HTTP 狀態碼告訴你「結果如何」——200 成功、404 找不到、500 伺服器出錯
- 下次客戶說「網站打不開」,你可以問:是連不上(DNS/網路問題)?還是看到錯誤頁面(伺服器問題)?
AI 協作:學了這個,跟 AI 怎麼配合?
了解網站運作原理後,你可以更精確地描述問題,讓 AI 幫你分析或寫出排查步驟。
你的人類優勢:
- 你知道客戶遇到的具體狀況(錯誤訊息、什麼時候發生、哪個頁面)
- 你能判斷問題的嚴重程度和商業影響
可以這樣跟 AI 說:
客戶反映打開 shop.example.com 出現 503 錯誤,請幫我列出可能的原因和排查步驟,用非技術人員看得懂的方式說明。
練習題
互動示範
挑戰任務
模擬 DNS 查詢:建立一個 dnsTable 物件,包含 "store.91app.com" 對應 "10.0.1.100",然後用 console.log 印出 "store.91app.com 的 IP 是 10.0.1.100"。
模擬 HTTP 狀態碼判斷:宣告 statusCode = 404,用 if/else if/else 判斷——200 印出 "成功",404 印出 "找不到頁面",其他印出 "未知錯誤"。
模擬伺服器回應:建立 response 物件包含 status: 200 和 product: "限量聯名款球鞋",如果 status 為 200,用 console.log 印出 "商品名稱:限量聯名款球鞋"。