Linux中國

如何在 Ubuntu 和 CentOS 上啟用 Nginx 的 HTTP/2 協議支持

HTTP/2 是 HTTP 網路協議的主要修訂版本,其專註於 HTTP 協議的性能改進。HTTP/2 協議的目標是減少延遲,並且允許在 Web 瀏覽器和伺服器之間的一個連接上並行發起多個請求,因此 Web 應用程序會更快。在本篇教程中,我們將像你展示如何在安裝有 Ubuntu 或 CentOS 作為操作系統的 Linux VPS 上使用開啟 NginxHTTP/2 協議。如果你使用 Apache,你可以查看我們的另一篇教程:如何在 Ubuntu 上開啟 Apache 的 HTTP/2 協議

必備條件

為了能夠按照本篇教程最終在伺服器上啟用 HTTP/2 協議,你需要先安裝好 Nginx 。並且確保功能正常而且配置沒有錯誤。你可以使用下面的命令來檢查一下:

sudo nginx -t

此外,你需要有伺服器的 root 訪問許可權,或者至少有一個具有 sudo 許可權的非 root 系統用戶,以便你在修改 Nginx 配置文件的時候不會出現許可權問題。最後你需要有一個域名和一個頒發給這個域名的有效的 SSL 證書。

在 Ubuntu 上開啟 Nginx 的 HTTP/2 協議

為了在 Ubuntu VPS 上開啟 Nginx 的 HTTP/2 協議,你需要編輯默認的 Nginx 的服務(server)塊,我們使用的是 nano,你可以使用你自己的文本編輯器。

sudo nano /etc/nginx/sites-available/default

增加下面的服務塊:

server {  
        server_name domain.com www.domain.com;
        listen 443 ssl http2 default_server;
        root /var/www/html;
        index index.html;

        location / {
                try_files $uri $uri/ =404;
        }

        ssl_certificate /etc/nginx/ssl/domain.com.crt;
        ssl_certificate_key /etc/nginx/ssl/domain.com.key;
}

server {
       listen         80;
       server_name    domain.com www.domain.com;
       return         301 https://$server_name$request_uri;
}

確保 domain.com 替換成你真正的域名。 此外,應正確設置文檔根(root)目錄,還有 SSL 證書和密鑰的路徑。

當你編輯完成這個服務塊之後,需要保存並關閉文件。使用以下命令檢查 Nginx 配置是否有錯誤:

sudo nginx -t

為了剛剛的改變生效,需要重啟 Nginx:

sudo systemctl restart nginx.service

如果你想為另一個域名開啟 HTTP/2 協議,你可以查看我們的博客如何在 Ubuntu 和 CentOS 上設置 Nginx 服務塊

在 CentOS 上開啟 Nginx 的 HTTP/2 協議

為了在 CentOS VPS 開啟 Nginx 的 HTTP/2 協議,你需要按照 Ubuntu 上完全相同的步驟做。唯一的不同點是 Nginx 塊文件的位置。為了在 CentOS 上編輯默認的 Nginx 服務塊,你需要進入 /etc/nginx/conf.d 這個文件夾。

# nano /etc/nginx/conf.d/default.conf

再次檢查配置是否有錯誤,保存並關閉文件,然後使用以下命令重新啟動 Nginx 服務:

# systemctl restart nginx.service

為了檢測 Nginx 的 HTTP/2 協議是否開啟成功,你可以使用一些在線 HTTP/2 檢測工具

via: https://www.rosehosting.com/blog/how-to-enable-http2-in-nginx-on-ubuntu-and-centos/

作者:rosehosting.com 譯者:Flowsnow 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國

    Linux中國

    DevOps 將去向何方?

    微軟、谷歌、亞馬遜、IBM 和甲骨文如今都在關注云上的 DevOps。這些大公司正在給企業提供 IT 自動化的服務。然而,DevOps 仍然在持續的演進中。DevSecOps、AIOps 和 NoOps 正在成為下一個流行詞。