大家好!在上一章我們學習了基礎的 Linux 命令操作,這一章我們將開始學習如何設置一個強大的網頁伺服器 – Nginx。 Nginx 是一個高性能的網頁伺服器和反向代理伺服器,在全球許多大型網站中都有應用,例如 Netflix 和 Airbnb。學習 Nginx 不僅能讓你建立自己的網站,更能幫助你理解網站架設的底層原理,對未來學習更複雜的伺服器管理技術非常有幫助。相較於其他網頁伺服器,例如 Apache,Nginx 通常擁有更高的效能和更低的資源消耗,並且配置相對簡潔易懂。 什麼是 Nginx? Nginx 主要的兩個功能是網頁伺服器和反向代理伺服器。
- 網頁伺服器:顧名思義,就是將網站的內容傳遞給瀏覽器。使用者透過瀏覽器輸入網址,Nginx 會負責找到對應的檔案並傳回給瀏覽器顯示。
- 反向代理伺服器:可以理解成一個「中介」。它站在伺服器前面,接收來自用戶端的請求,然後將請求轉發給後端的應用伺服器(例如:處理動態內容的 PHP 應用),再將應用伺服器的回應傳回給用戶端。這樣可以提升網站的安全性、性能,以及负载均衡能力。 Nginx 和 Apache 的比較:雖然 Apache 也是很受歡迎的網頁伺服器,但 Nginx 在處理大量併發請求方面通常表現更好,資源消耗也更少,因此在高流量網站中更常被採用。 安裝 Nginx 我們將使用 Ubuntu 系統作為範例,在其他 Linux 發行版中,安裝方式可能略有不同,請參考你的發行版文件。
- 第一步:更新你的系統套件列表。開啟終端機,輸入:
sudo apt update
- 第二步:安裝 Nginx。輸入:
sudo apt install nginx
- 第三步:啟動 Nginx 服務。輸入:
sudo systemctl start nginx
- 第四步:檢查 Nginx 服務狀態。輸入:
sudo systemctl status nginx
如果顯示 “active (running)”,就表示 Nginx 已經成功啟動了! 如果出現錯誤訊息,請仔細檢查錯誤訊息並嘗試解決。 配置 Nginx Nginx 的主要配置文件位於/etc/nginx/nginx.conf
,但我們通常會在/etc/nginx/sites-available/
目錄下配置虛擬主機。/etc/nginx/sites-available/default
這個檔案是預設的配置檔案。我們將修改它來建立一個簡單的網站。 - 使用文字編輯器開啟
default
檔案:sudo nano /etc/nginx/sites-available/default
- 修改
server
區塊內的內容,例如:server { listen 80; listen [::]:80; server_name localhost; # 或你的域名,例如 myblog.com root /var/www/html; # 網站檔案的根目錄 index index.html; # 預設開啟的檔案 location / { try_files $uri $uri/ =404; } }
- 儲存檔案,並測試配置:
sudo nginx -t
如果沒有錯誤訊息,就表示配置正確。 - 重新載入 Nginx 配置:
sudo systemctl reload nginx
這一步很重要,讓 Nginx 讀取新的配置。 課堂練習 現在,我們來實際操作一下: - 建立一個簡單的 HTML 檔案:在
/var/www/html
目錄下,建立一個名為index.html
的檔案,並輸入以下內容:<!DOCTYPE html> <html> <head> <title>我的第一個 Nginx 網站</title> </head> <body> <h1>歡迎來到我的網站!</h1> </body> </html>
- 在你的瀏覽器中輸入
http://localhost
或你設定的域名,例如http://myblog.com
。如果看到 “歡迎來到我的網站!”,就表示你已經成功設置了 Nginx! 結語 恭喜你完成了 Nginx 的基本設置!這只是學習 Nginx 的第一步,你可以嘗試設定不同的虛擬主機,或是學習更進階的 Nginx 配置,例如:設定 SSL 憑證 (HTTPS)、反向代理、負載均衡等等。 理解網頁伺服器的運作方式,是建立一個完整網站的基礎,下一步你可以嘗試學習如何設置資料庫,例如 MySQL 或 PostgreSQL,並將它們與你的網頁伺服器整合,建立更豐富的網站功能。 持續學習,你將成為網站架設和伺服器管理的專家!