📖 Apache HTTP/2 設定

分類:伺服器管理 | 作者:pake | 發布時間:2024-11-14 14:08

Apache2 HTTP/2 設定指南

HTTP/2 是 HTTP 協議的改進版本,能夠提供更快的網頁加載速度和更好的性能。本指南將介紹如何在 Fedora Linux 上設定 Apache(httpd) 來啟用 HTTP/2,並以 PHP 應用為例進行驗證。


目錄


確認 Apache2 版本

HTTP/2 支援 Apache 2.4.58 及以上版本,請使用以下命令確認:

httpd -v

如果版本低於 2.4.58,請確保 Fedora 套件已更新:

sudo dnf update -y

安裝與啟用 HTTP/2 模組

1. 安裝 Apache(httpd)與必要套件

如果尚未安裝 Apache,請執行:

sudo dnf install -y httpd mod_ssl

2. 啟用 HTTP/2 支援模組

確保 mod_http2 模組已啟用:

sudo dnf install -y mod_http2

啟用並重新啟動 Apache:

sudo systemctl enable --now httpd
sudo systemctl restart httpd

修改 Apache 設定檔

編輯 Apache 站點設定 /etc/httpd/conf.d/ssl.conf 或您的虛擬主機設定檔,例如 /etc/httpd/conf.d/my_site.conf

sudo vi /etc/httpd/conf.d/my_site.conf

<VirtualHost *:443> 區塊內 加入以下內容

<VirtualHost *:443>
    ServerAdmin webmaster@fedora.tw
    DocumentRoot /var/www/html

    Protocols h2 http/1.1

    SSLEngine on
    SSLCertificateFile /etc/pki/tls/certs/server.crt
    SSLCertificateKeyFile /etc/pki/tls/private/server.key

    <Directory /var/www/html>
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

注意:HTTP/2 只支援 HTTPS,請確保已安裝 SSL 憑證

儲存後,重新啟動 Apache:

sudo systemctl restart httpd

測試 HTTP/2 是否啟用

使用 curl 測試:

curl -I --http2 https://your-domain.com

若成功,應會看到 HTTP/2 的回應。


使用 PHP 應用驗證 HTTP/2

/var/www/html/index.php 加入以下內容,檢查 HTTP/2 是否運行:

<?php
if (isset($_SERVER['SERVER_PROTOCOL'])) {
    echo "伺服器協議: " . $_SERVER['SERVER_PROTOCOL'] . "<br>";
}

if (!empty($_SERVER['HTTPS'])) {
    echo "HTTPS 已啟用<br>";
} else {
    echo "HTTPS 未啟用,請確認 SSL 設定。<br>";
}
?>

開啟瀏覽器並訪問 https://your-domain.com/index.php,若顯示 HTTP/2.0,則代表 HTTP/2 啟用成功。


結語

透過 HTTP/2,Apache 可以提高網站效能並改善用戶體驗。本指南介紹了 HTTP/2 的啟用方式,並透過 PHP 應用進行驗證,確保您的伺服器已成功運行 HTTP/2。

⬅ 上一篇 下一篇 ➡
🔙 返回 伺服器管理 📚 返回教學列表 🏠 返回首頁