在Ubuntu上配置Nginx以支持HTTP/2,你需要確保你的Nginx版本至少是1.9.5,并且你的SSL證書已經正確安裝。以下是配置HTTP/2的步驟:
更新Nginx: 確保你的Nginx版本是最新的,或者至少是支持HTTP/2的版本。你可以使用以下命令來更新Nginx:
sudo apt update
sudo apt upgrade nginx
安裝SSL證書: HTTP/2通常與TLS(傳輸層安全協議)一起使用,因此你需要一個SSL證書。你可以使用Let’s Encrypt免費獲取一個證書:
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
按照提示操作,Certbot會自動為你配置Nginx并啟用HTTPS。
配置Nginx:
編輯你的Nginx配置文件。通常,這個文件位于/etc/nginx/sites-available/目錄下,你可能需要創建一個新的配置文件或者編輯默認的配置文件。
sudo nano /etc/nginx/sites-available/yourdomain.com
在server塊中,確保你有以下配置:
server {
listen 443 ssl http2;
server_name yourdomain.com www.yourdomain.com;
ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
# 其他配置...
location / {
root /var/www/yourdomain.com;
index index.html index.htm;
}
# 更多配置...
}
確保listen 443 ssl http2;這一行包含了ssl和http2參數。
檢查配置并重啟Nginx: 在保存并關閉配置文件后,運行以下命令來檢查Nginx配置是否有誤:
sudo nginx -t
如果配置正確,重啟Nginx來應用更改:
sudo systemctl restart nginx
驗證HTTP/2: 你可以使用瀏覽器的開發者工具或者在線服務如SSL Labs來驗證你的網站是否已經成功啟用了HTTP/2。
請注意,HTTP/2需要HTTPS,因此確保你的網站使用的是SSL證書。如果你還沒有SSL證書,你需要先獲取一個。上述步驟中使用了Certbot來自動獲取和配置Let’s Encrypt證書。