Ubuntu 架設 Apache 網頁伺服器完整教學:虛擬主機、SSL 與最佳化安全指南

目次

1. 前言

什麼是 Ubuntu Web 伺服器?

Web 伺服器是指用於在網際網路上提供網站內容的系統。常見的 Web 伺服器軟體有 Apache、Nginx、LiteSpeed 等,其中在 Ubuntu 上最廣泛使用的是 Apache
由於 Ubuntu 輕量、穩定且為開源,因此被從個人到企業廣泛採用。特別是非常適合架設 LAMP 環境(Linux, Apache, MySQL/MariaDB, PHP),可支援眾多網站及應用程式的運行。

本文適用對象

本文章主要針對第一次架設 Web 伺服器的新手。將說明如何在 Ubuntu 上建置 Web 伺服器、安裝 Apache、設定虛擬主機與 SSL 憑證,同時介紹最佳化與安全性強化的方法。

你將學到什麼?

  • 如何在 Ubuntu 架設 Web 伺服器(Apache 安裝與基本設定)
  • 虛擬主機設定及多網站管理
  • 使用 Let’s Encrypt 免費申請 SSL 憑證
  • Web 伺服器的安全性加強與效能最佳化
  • 常見問題排解與解決方案

2. Ubuntu 安裝與初始設定

系統需求

建議用於 Ubuntu Web 伺服器的最低規格如下。

項目最低需求建議需求
作業系統Ubuntu 22.04 LTSUbuntu 22.04 LTS
CPU1GHz 以上2GHz 以上
記憶體512MB2GB 以上
儲存空間10GB 以上20GB 以上
網路可連接網際網路建議高速連線

下載與安裝 Ubuntu

可從官方網站(https://ubuntu.com/download/server)下載 Ubuntu。取得 ISO 檔案後,可於 VirtualBox 或 VMware 建立虛擬機,或安裝於實體伺服器/VPS 上。

安裝步驟:

  1. 建立安裝媒體
  • USB 隨身碟(可用 Rufus 等工具)
  • 將 ISO 掛載於虛擬機
  1. 依照安裝精靈設定
  • 語言設定為「日本語」(可根據需求選繁體中文)
  • 確認網路連線
  • 設定使用者名稱與密碼
  • 安裝 SSH 伺服器(可日後補裝)
  1. 完成系統安裝後重新啟動
  2. 登入並開始初始設定

基本初始設定

安裝完 Ubuntu 後,建議立刻進行以下初始設定:

  1. 套件升級
   sudo apt update && sudo apt upgrade -y

→ 進行系統安全更新與軟體升級。

  1. 設定時區
   sudo timedatectl set-timezone Asia/Taipei

→ 設定為台灣時區(Asia/Taipei)。

  1. 啟用防火牆
   sudo ufw enable

→ 啟用防火牆以防止未經授權的存取。

  1. 設定 SSH(遠端管理)
  • 確認 SSH 是否啟用
    sudo systemctl status ssh
  • 若未啟用,則執行
    sudo systemctl enable --now ssh

完成上述初始設定後,即可開始作為 Web 伺服器運作。

3. 安裝與基本設定 Apache

什麼是 Apache?

Apache(全名:Apache HTTP Server) 是一套開源的 Web 伺服器軟體,以其穩定性、擴充性及安全性著稱。全球約 30% 的伺服器採用 Apache

主要特點:

  • 免費且開源(Open Source)
  • 模組化架構,方便擴充各式功能
  • 支援 SSL/TLS,可實現 HTTPS 加密
  • 支援虛擬主機(Virtual Host),可同時管理多個網站

Apache 安裝方法

在 Ubuntu 上,建議使用 apt 套件管理工具進行 Apache 安裝。

安裝 Apache

請執行以下指令安裝 Apache:

sudo apt update
sudo apt install apache2 -y

確認安裝是否成功

安裝後可用以下指令確認 Apache 版本:

apache2 -v

範例輸出:

Server version: Apache/2.4.52 (Ubuntu)
Server built:   2023-07-01T12:34:56

出現版本資訊即代表安裝成功。

Apache 啟動、停止與重啟

Apache 可透過 systemctl 進行管理。

啟動 Apache

sudo systemctl start apache2

此時 Apache 已啟動,可接受網頁請求。

設定 Apache 開機自動啟動

sudo systemctl enable apache2

確認 Apache 狀態

sudo systemctl status apache2

正常情況下會看到 active (running) 的提示。

重啟與停止 Apache

修改設定後可重啟:

sudo systemctl restart apache2

暫時停止服務:

sudo systemctl stop apache2

Apache 運作確認

要確認 Apache 是否正確運作,可直接存取伺服器的 IP 位址。

1. 查詢伺服器 IP 位址

hostname -I

或查詢外部 IP:

curl ifconfig.me

2. 於瀏覽器測試

在瀏覽器網址列輸入:

http://<伺服器 IP 位址>/

若於本機測試,可用

http://localhost/

畫面會顯示預設 Apache 網頁(/var/www/html/index.html)。

預設頁面範例:

Apache2 Ubuntu Default Page
It works!

出現上述訊息,即代表 Apache 運作正常。

防火牆設定

Ubuntu 推薦使用 UFW(Uncomplicated Firewall) 進行防火牆管理。剛安裝完 Apache 時,HTTP(80 埠)與 HTTPS(443 埠)可能會被擋住。

允許 Apache 通訊規則

sudo ufw allow 'Apache'

如需同時開啟 HTTPS:

sudo ufw allow 'Apache Full'

檢查防火牆狀態

sudo ufw status

範例輸出:

Status: active

To                         Action      From
--                         ------      ----
Apache                     ALLOW       Anywhere
Apache (v6)                ALLOW       Anywhere (v6)

若看到 Apache 規則已允許,表示外部流量已可存取。

小結

截至此步驟,您已經完成 Ubuntu 上 Apache 的安裝與基本設定
本節重點:

  • Apache 安裝方法
  • 啟動/自動啟動設定
  • 瀏覽器確認 Apache 運作
  • 防火牆設定
  • 主要設定檔介紹

4. 虛擬主機設定(多網站管理)

什麼是虛擬主機(Virtual Host)?

虛擬主機是指在同一台 Apache 伺服器上,同時運作多個網域(或子網域) 的技術。
例如,可用一台伺服器同時架設 example.comtest.com 兩個網站。

虛擬主機分為兩種:

  1. 名稱型虛擬主機(Name-based Virtual Host)
  • 同一個 IP 位址上運作多網站
  • 最常見的架設方式
  1. IP 型虛擬主機(IP-based Virtual Host)
  • 針對不同 IP 位址設定不同網站
  • 需有多個網路介面

通常會選擇名稱型虛擬主機

虛擬主機設定步驟

1. 建立網站資料夾

每個網站建立專屬目錄:

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/test.com/public_html

2. 設定目錄擁有者

讓 Apache 具備正確權限:

sudo chown -R www-data:www-data /var/www/example.com/public_html
sudo chown -R www-data:www-data /var/www/test.com/public_html

3. 建立測試首頁

方便確認網站啟用狀態:

echo "<h1>Welcome to example.com</h1>" | sudo tee /var/www/example.com/public_html/index.html
echo "<h1>Welcome to test.com</h1>" | sudo tee /var/www/test.com/public_html/index.html

4. 建立虛擬主機設定檔

虛擬主機設定檔需建立在 /etc/apache2/sites-available/ 資料夾內。

example.com 的虛擬主機設定

請執行下列指令建立與編輯設定檔:

sudo nano /etc/apache2/sites-available/example.com.conf

設定內容如下:

<VirtualHost *:80>
    ServerAdmin admin@example.com
    ServerName example.com
    ServerAlias www.example.com
    DocumentRoot /var/www/example.com/public_html

    <Directory /var/www/example.com/public_html>
        Options -Indexes +FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/example.com_error.log
    CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined
</VirtualHost>

test.com 的虛擬主機設定

sudo nano /etc/apache2/sites-available/test.com.conf

內容如下:

<VirtualHost *:80>
    ServerAdmin admin@test.com
    ServerName test.com
    ServerAlias www.test.com
    DocumentRoot /var/www/test.com/public_html

    <Directory /var/www/test.com/public_html>
        Options -Indexes +FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/test.com_error.log
    CustomLog ${APACHE_LOG_DIR}/test.com_access.log combined
</VirtualHost>

5. 啟用虛擬主機

設定檔完成後,請透過 a2ensite 指令啟用:

sudo a2ensite example.com.conf
sudo a2ensite test.com.conf

測試 Apache 設定檔

檢查設定語法有無錯誤:

sudo apachectl configtest

若回傳 Syntax OK,即可重啟 Apache:

sudo systemctl restart apache2

6. 本機測試(編輯 hosts 檔案)

為確認虛擬主機正確運作,可編輯本機的 hosts 檔案:

sudo nano /etc/hosts

新增以下內容:

127.0.0.1 example.com
127.0.0.1 test.com

存檔後,在瀏覽器輸入 http://example.com/http://test.com/,若分別看到「Welcome to example.com」「Welcome to test.com」即代表成功。

7. 常見問題排解

若虛擬主機無法運作,請檢查下列事項。

1. 查看 Apache 錯誤日誌

sudo tail -f /var/log/apache2/error.log

2. 確認設定檔已啟用

ls /etc/apache2/sites-enabled/

若能看到對應 .conf 檔,表示已啟用。

3. 檢查 Apache 監聽的埠號

請確認 /etc/apache2/ports.conf 內有下列設定:

Listen 80

小結

本節重點回顧:

  • 虛擬主機概念及用途
  • 建立網站資料夾
  • 建立與啟用虛擬主機設定檔
  • 本機測試方法
  • 問題排解

5. SSL/TLS 憑證導入(HTTPS 化)

什麼是 SSL/TLS?

SSL(Secure Sockets Layer)及 TLS(Transport Layer Security)是用於網路加密安全通訊的技術。

SSL/TLS 導入的優點

加密資料傳輸(防止竊聽、竄改)
提升 Google SEO 評分(HTTPS 站點排名優先)
避免瀏覽器警告(HTTP 會標示為「不安全」)
保護線上付款與登入資訊

目前推薦使用 TLS(1.2/1.3 版),舊版 SSL 3.0 已不建議採用。

使用 Let’s Encrypt 申請免費 SSL 憑證

Let’s Encrypt 是免費的憑證授權中心(CA),可用 certbot 工具自動申請並安裝 SSL 憑證於 Apache。

安裝 Let’s Encrypt 工具(Certbot)

首先安裝 certbot 及 Apache 整合套件:

sudo apt update
sudo apt install certbot python3-certbot-apache -y

Apache 自動化設定 SSL

Let’s Encrypt 支援透過 certbot --apache 指令,自動幫 Apache 設定 SSL 憑證。

sudo certbot --apache -d example.com -d www.example.com

執行後,會自動進行以下流程:

  1. 網域驗證(HTTP-01 驗證)
  2. 發行 SSL 憑證
  3. Apache SSL 設定自動完成
  4. 自動設定 HTTPS 轉址

SSL 運作確認

於瀏覽器輸入下列網址,確認 HTTPS 是否生效。

https://example.com/

瀏覽器網址列顯示鎖頭符號代表憑證已啟用。

手動設定 Apache SSL

若不使用 certbot --apache,可參照以下方式手動設定:

1. 啟用 Apache SSL 模組

sudo a2enmod ssl
sudo systemctl restart apache2

2. 設定 SSL 虛擬主機

編輯 /etc/apache2/sites-available/example.com-le-ssl.conf

sudo nano /etc/apache2/sites-available/example.com-le-ssl.conf

範例內容:

<VirtualHost *:443>
    ServerAdmin admin@example.com
    ServerName example.com
    ServerAlias www.example.com
    DocumentRoot /var/www/example.com/public_html

    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem

    <Directory /var/www/example.com/public_html>
        Options -Indexes +FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/example.com_error.log
    CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined
</VirtualHost>

3. 啟用設定並重啟 Apache

sudo a2ensite example.com-le-ssl.conf
sudo systemctl restart apache2

SSL 憑證自動更新

Let’s Encrypt 憑證僅有效90 天,建議設定自動更新。

1. 測試 Certbot 自動續約

sudo certbot renew --dry-run

2. 查詢憑證自動續約排程

Certbot 會自動將續約任務加到 /etc/cron.d/certbot
也可用指令查詢排程:

sudo systemctl list-timers | grep certbot

SSL 問題排解

1. SSL 憑證未套用

解決方法:重啟 Apache 並檢查設定

sudo systemctl restart apache2
sudo apachectl configtest

2. 憑證過期

解決方法:手動強制續約

sudo certbot renew --force-renewal

3. Let’s Encrypt 驗證失敗

解決方法:確認防火牆已允許 80 與 443 埠

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw reload

6. 強化 Web 伺服器安全性

UFW(防火牆)設定

在 Ubuntu 上建議使用 UFW(Uncomplicated Firewall),只允許必要連線,阻擋其他存取以保護系統。

檢查防火牆設定

sudo ufw status

僅允許必要的埠口

預設應封鎖所有連入,只開放必要服務。

sudo ufw default deny incoming
sudo ufw default allow outgoing

建議開放埠口

  • SSH(22 埠)
  sudo ufw allow 22/tcp
  • HTTP(80 埠)
  sudo ufw allow 80/tcp
  • HTTPS(443 埠)
  sudo ufw allow 443/tcp

啟用防火牆

sudo ufw enable

強化 SSH 安全性

預設狀態下,SSH 服務容易成為暴力破解攻擊的目標,建議做以下加強設定。

變更 SSH 埠口

sudo nano /etc/ssh/sshd_config

修改內容範例:

Port 2222  # 將 22 改為 2222 或其他非預設值
PermitRootLogin no  # 禁止 root 直接登入
PasswordAuthentication no  # 關閉密碼登入(僅允許金鑰登入)

修改後請重啟 SSH:

sudo systemctl restart ssh

安裝 Fail2Ban 防止暴力破解

Fail2Ban 會自動封鎖嘗試暴力破解 SSH 的 IP。

sudo apt install fail2ban -y

編輯設定檔:

sudo nano /etc/fail2ban/jail.local

範例設定內容:

[sshd]
enabled = true
port = 2222
maxretry = 3
bantime = 600

啟用 Fail2Ban:

sudo systemctl restart fail2ban
sudo systemctl enable fail2ban

Apache 安全性設定

隱藏版本資訊

sudo nano /etc/apache2/conf-available/security.conf

將以下設定加入或修改:

ServerTokens Prod
ServerSignature Off

設定完畢後,請重啟 Apache:

sudo systemctl restart apache2

關閉目錄瀏覽

sudo nano /etc/apache2/apache2.conf

找到 <Directory /var/www/>,移除 Indexes

<Directory /var/www/>
    Options -Indexes +FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

完成後重啟 Apache:

sudo systemctl restart apache2

停用不必要的 Apache 模組

為了提升安全性,建議關閉未使用的模組,例如自動目錄索引與狀態頁面:

sudo a2dismod autoindex
sudo a2dismod status
sudo systemctl restart apache2

增加安全性標頭(Security Headers)

可透過 Apache 設定適當的安全性標頭,進一步強化網站防護。

啟用 mod_headers 模組

sudo a2enmod headers
sudo systemctl restart apache2

設定安全性標頭

編輯虛擬主機設定檔 /etc/apache2/sites-available/example.com.conf,在 <VirtualHost> 區塊內新增:

<IfModule mod_headers.c>
    Header always set X-Content-Type-Options "nosniff"
    Header always set X-XSS-Protection "1; mode=block"
    Header always set X-Frame-Options "SAMEORIGIN"
    Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
</IfModule>

完成後重啟 Apache:

sudo systemctl restart apache2

問題排解(Troubleshooting)

檢查防火牆設定

sudo ufw status

檢查 Apache 設定語法

sudo apachectl configtest

顯示 Syntax OK 代表語法正確。

SSH 無法連線時的處理

更改 SSH 埠號後連不上,可使用下列方式指定新埠號:

ssh -p 2222 user@server-ip

小結

本節介紹了Web 伺服器安全性強化的重點作法。重點如下:

  • UFW(防火牆)設定
  • SSH 加強保護(變更埠口、Fail2Ban)
  • Apache 安全性設定(隱藏版本、關閉目錄瀏覽)
  • 增加安全性標頭

7. 效能最佳化

Apache 調校(Tuning)

預設狀態下 Apache 效率可能無法發揮最大。透過以下設定可進一步提升效能。

最佳化 MPM(Multi-Processing Module)

MPM(多工處理模組)決定 Apache 如何處理請求。

檢查目前的 MPM 設定:

apachectl -M | grep mpm

若為 mpm_prefork_module,建議改用速度較快的 mpm_event

切換指令如下:

sudo a2dismod mpm_prefork
sudo a2enmod mpm_event
sudo systemctl restart apache2

啟用 KeepAlive(持續連線)

開啟 KeepAlive 可減少建立連線次數,加快網站回應速度。

設定檔編輯:

sudo nano /etc/apache2/apache2.conf

確認或加入以下內容:

KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5

存檔後重啟 Apache:

sudo systemctl restart apache2

善用快取(Cache)

瀏覽器端與伺服器端快取能大幅減少不必要請求,提高效能。

啟用 mod_expires(瀏覽器快取)

sudo a2enmod expires
sudo systemctl restart apache2

編輯網站設定檔 /etc/apache2/sites-available/example.com.conf,新增:

<IfModule mod_expires.c>
    ExpiresActive On
    ExpiresDefault "access plus 1 month"
    ExpiresByType image/jpg "access plus 1 year"
    ExpiresByType image/jpeg "access plus 1 year"
    ExpiresByType image/png "access plus 1 year"
    ExpiresByType text/css "access plus 1 month"
    ExpiresByType application/javascript "access plus 1 month"
</IfModule>

重啟 Apache:

sudo systemctl restart apache2

啟用 mod_cache(伺服器快取)

sudo a2enmod cache cache_disk
sudo systemctl restart apache2

於設定檔中加入:

<IfModule mod_cache.c>
    CacheEnable disk /
    CacheRoot /var/cache/apache2/mod_cache_disk
    CacheDefaultExpire 86400
</IfModule>

再次重啟 Apache:

sudo systemctl restart apache2

資料壓縮(Compression)

使用 mod_deflate 將網站資料壓縮,減少傳輸流量。

啟用 mod_deflate

sudo a2enmod deflate
sudo systemctl restart apache2

在設定檔中新增:

<IfModule mod_deflate.c>
    AddOutputFilterByType DEFLATE text/html text/plain text/xml
    AddOutputFilterByType DEFLATE text/css
    AddOutputFilterByType DEFLATE application/javascript
    AddOutputFilterByType DEFLATE image/svg+xml
</IfModule>

再重啟 Apache:

sudo systemctl restart apache2

資源限制(Resource Limiting)

可針對大量請求或異常流量設限,以防服務被濫用。

啟用 mod_ratelimit

sudo a2enmod ratelimit
sudo systemctl restart apache2

於設定檔 /etc/apache2/sites-available/example.com.conf 新增:

<Location />
    SetOutputFilter RATE_LIMIT
    SetEnv rate-limit 200
</Location>

存檔並重啟 Apache:

sudo systemctl restart apache2

問題排解(Troubleshooting)

進行效能最佳化後,如遇到問題可參考以下方法:

檢查 Apache 錯誤日誌

sudo tail -f /var/log/apache2/error.log

檢查 Apache 負載情況

sudo apachectl status

檢查伺服器 CPU/記憶體用量

top

htop

(如無 htop 可先安裝 sudo apt install htop

小結

本節重點回顧:

  • Apache 調校(MPM、KeepAlive 設定)
  • 快取應用(瀏覽器快取、伺服器快取)
  • 資料壓縮(mod_deflate)
  • 資源限制(mod_ratelimit)

8. 問題排解總覽

Apache 無法啟動或異常關閉

檢查 Apache 狀態

sudo systemctl status apache2

如顯示 Active: failed 表示有錯誤。

查看錯誤日誌

sudo journalctl -xe
sudo tail -f /var/log/apache2/error.log

確認埠口占用情況

sudo netstat -tulnp | grep ':80'

sudo lsof -i:80

如有衝突,請檢查 /etc/apache2/ports.conf

SSL 憑證錯誤

憑證過期

sudo certbot renew --force-renewal

AH02572: Failed to configure at least one certificate

請打開 /etc/apache2/sites-available/example.com-le-ssl.conf 檢查:

SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem

正確後重啟 Apache:

sudo systemctl restart apache2

網站無法顯示(403、404、500 錯誤)

403 Forbidden

sudo chown -R www-data:www-data /var/www/example.com/public_html
sudo chmod -R 755 /var/www/example.com/public_html

404 Not Found

確認虛擬主機設定檔 /etc/apache2/sites-available/example.com.conf 裡的 DocumentRoot 是否正確。

DocumentRoot /var/www/example.com/public_html

如未啟用 mod_rewrite

sudo a2enmod rewrite
sudo systemctl restart apache2

500 Internal Server Error

檢查錯誤日誌:

sudo tail -f /var/log/apache2/error.log

.htaccess 重新命名來排除問題:

mv /var/www/example.com/public_html/.htaccess /var/www/example.com/public_html/.htaccess.bak

高負載或效能問題

檢查 Apache 負載

top

htop

停用不必要模組

sudo a2dismod status
sudo a2dismod autoindex
sudo systemctl restart apache2

最佳化快取

sudo a2enmod cache cache_disk

網路連線問題

查詢伺服器 IP 位址

ip a

curl ifconfig.me

檢查埠口開放狀態

sudo netstat -tulnp | grep LISTEN

sudo lsof -i :80

如未列出 80、443 埠,請調整防火牆:

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw reload

小結

本節說明了Ubuntu Web 伺服器(Apache)常見錯誤與解決方式,包括:

  • Apache 啟動失敗的排解
  • SSL 憑證相關錯誤
  • 403/404/500 錯誤的原因與修正
  • 效能最佳化
  • 網路連線確認

9. 總結

回顧學到的內容

讓我們簡單回顧本教學各章節:

章節內容說明
1. 前言Ubuntu Web 伺服器基本概念與本文目標
2. Ubuntu 安裝與初始設定作業系統安裝、升級與防火牆配置
3. Apache 安裝與基本設定Apache 的安裝、啟動與運作確認
4. 虛擬主機設定多網站架設與管理
5. SSL/TLS 憑證導入使用 Let’s Encrypt 完成 HTTPS
6. 伺服器安全性強化防火牆、SSH 與 Apache 保護
7. 效能最佳化快取、資料壓縮、Apache 調校
8. 問題排解Apache 錯誤、SSL、負載、連線排查

進階學習建議

完成基礎設定後,可參考下列主題讓你的 Ubuntu Web 伺服器更上層樓:

WordPress 或 PHP 應用程式安裝
資料庫伺服器(MySQL / MariaDB)架設
反向代理(Nginx + Apache)應用
雲端自動擴充(AWS, GCP, Azure)
日誌管理與監控(如 fail2ban、logwatch)

常見問答(FAQ)

Q1: Ubuntu 上應該選 Nginx 還是 Apache?

A1: 若以靜態網頁為主建議用 Nginx,動態網站(PHP 等)多時推薦 Apache。
Nginx 也常被用作反向代理,可和 Apache 結合。

Q2: SSL 憑證能自動續約嗎?

A2: 只要有安裝 Certbot 就可自動續約。
可用 sudo certbot renew --dry-run 測試,排程設定於 cron

Q3: 怎麼進一步提升 Web 伺服器安全?

A3: 建議啟用 Fail2Ban 防暴力破解,隱藏 Apache 版本資訊,停用不用的模組。

Q4: 有哪些方法能提升 Apache 效能?

A4: 選擇合適 MPM(如 event/worker)、設定快取(mod_cache)、資料壓縮(mod_deflate)。

Q5: 網站出現「403 Forbidden」怎麼辦?

A5: 請確認目錄擁有者設為 www-data,權限為 755。

總結

架設 Ubuntu Web 伺服器,從基礎到進階都包含許多細節與技巧。熟練之後,可大幅提升網站穩定性與安全性。

🚀 歡迎參考本教學,建構安全又高效的 Web 伺服器,持續精進你的運維實力! 🚀

年収訴求