Nginx 教學
Nginx(發音近似「engine x」)是目前全球使用率最高的網頁伺服器之一,同時也是最常見的反向代理(reverse proxy)與負載平衡(load balancer)工具。本站整理 Nginx 最核心、最常用的知識與實作,讓你能快速看懂設定檔、架好一個網站,並且知道遇到問題該往哪個方向查。
為什麼是 Nginx?
Nginx 採用事件驅動(event-driven)、非同步、非阻塞的架構,用少量的 worker process 就能同時處理大量連線,因此在效能與資源使用上明顯優於傳統的一連線一執行緒(thread-per-connection)架構。也因為這個特性,Nginx 除了當網頁伺服器,更常被放在系統最前端,身兼四種角色:
- 網頁伺服器:直接提供靜態檔案(HTML、圖片、前端打包後的檔案)。
- 反向代理:把請求轉發給後端的應用程式(Node.js、Python、Java 等)。
- 負載平衡:把流量分散到多台後端伺服器,提升可用性與擴充性。
- HTTPS 終止點:集中處理 TLS 加解密,後端服務不必各自處理憑證。
學習地圖:最重要的 20%
Nginx 的功能非常多,但日常維運與面試最常用到的,其實集中在少數幾個概念。本站依照這個順序規劃:
| 分類 | 核心觀念 | 對應章節 |
|---|---|---|
| 入門與核心概念 | Master / Worker 架構、設定檔的巢狀結構(http → server → location)、安裝與重載流程 |
入門與核心概念 |
| 網站與反向代理 | server block 架站、location 比對順序、proxy_pass 反向代理、upstream 負載平衡 |
網站與反向代理 |
| 安全與效能 | HTTPS/TLS 憑證、gzip 與快取、隱藏版本資訊、限流與存取控制 |
安全與效能 |
| 影音教學 | 官方與精選 YouTube 教學影片,搭配文字重點整理 | 影音教學 |
只要熟悉這四大類,就足以應付九成以上的日常 Nginx 設定工作;更進階的模組(例如 stream 模組、Lua 整合)可以之後再依需求延伸學習。
官方學習資源
官方文件與影音
- Nginx 官方文件 是最權威的參考來源,設定指令的細節都以此為準。
- 想直接看影片學習,可以先到本站的 影音教學,裡面整理了 Nginx 官方頻道與精選 YouTube 教學影片。
如何使用本站
建議依照上表由上到下閱讀:先掌握基本架構與安裝,再學會架站與反向代理,最後補齊安全與效能的觀念。每一頁都可以獨立查閱,不需要照順序才能看懂。