第六章:設置 Nginx 網頁伺服器

大家好!在上一章我們學習了基礎的 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,並將它們與你的網頁伺服器整合,建立更豐富的網站功能。 持續學習,你將成為網站架設和伺服器管理的專家!

優惠推廣

優惠推廣
不再顯示

確定今天不再顯示提示