GNU/Linux >> Linux の 問題 >  >> Ubuntu

NginxでHTTP/2.0を有効にする方法

HTTP / 2 HTTPの最新の標準です プロトコル、 HTTP / 1.1の後継です 。 Web開発者や一般的なユーザーにメリットをもたらすため、ますます人気が高まっています。 HTTP / 1.1 のすべてのコア機能をサポートすることにより、HTTPセマンティクスの最適化されたトランスポートを提供します。 しかし、複数の方法でより効率的になることを目指しています。

HTTP / 2の上にたくさんの機能があります これにより、Webサイト/アプリケーションを最適化する可能性が高まります。真の多重化と同時実行性、より優れたヘッダー圧縮(バイナリエンコーディング)、より優れた優先順位付け、より優れたフロー制御メカニズム、および「サーバープッシュ」と呼ばれる新しい対話モードを提供します。 」は、サーバーがクライアントに応答をプッシュできるようにします。言うまでもなく、 HTTP / 2 Googleの実験的なSPDYに基づいています プロトコル。

したがって、 HTTP / 2の主な焦点は 全体的なWebページの読み込み時間を短縮し、パフォーマンスを向上させることです。また、 HTTP / 2 を使用しているため、セキュリティだけでなくネットワークとサーバーのリソース使用量にも焦点を当てています。 、 SSL / TLS 暗号化は必須です。

この記事では、 Nginxを有効にする方法を学習します HTTP / 2を使用 Linuxサーバーでのサポート。

前提条件:

  • NGINXの動作中のインストール バージョン1.9.5 ngx_http_v2_moduleで構築された以上 モジュール。
  • サイトでSSL/TLS証明書が使用されていることを確認してください。証明書がない場合は、Let’s Encryptから取得するか、自己署名証明書を使用してください。

NGINXをインストールできます または、 LEMPを使用して展開します 次のガイドで説明されているようにスタックします。

  • CentOS8にNginxをインストールする方法
  • CentOS8にLEMPサーバーをインストールする方法
  • RHEL 8にNGINX、MySQL / MariaDB、PHPをインストールする方法
  • Ubuntu20.04でPhpMyAdminを使用してLEMPスタックをインストールする方法
  • Debian 10にサーバーブロック(仮想ホスト)を使用してNginxをインストールする
  • LinuxでNginxをHTTPロードバランサーとして使用する方法

NGINXでHTTP/2.0を有効にする方法

NGINXがインストールされている場合は、ngx_http_v2_moduleでビルドされていることを確認してください 次のコマンドを実行してモジュールを作成します。

# strings /usr/sbin/nginx | grep _module | grep -v configure| sort | grep ngx_http_v2_module

Nginx HTTP/2モジュールを確認してください

NGINXによって提供されるWebサイト/アプリケーションを取得したら HTTPS 構成済みで、Webサイトの仮想サーバーブロック(または仮想ホスト)を開きます )編集用のファイル。

# vi /etc/nginx/conf.d/example.com.conf                    [On CentOS/RHEL]
$ sudo nano /etc/nginx/sites-available/example.com.conf    [On Ubuntu/Debian]

http2を追加するだけで、HTTP/2サポートを有効にできます。 すべてのlistenへのパラメータ 次のスクリーンショットに示すようなディレクティブ。

listen 443 ssl http2;

サンプルのサーバーブロック構成は次のようになります。

server {
        server_name example.com www.example.com;
        access_log  /var/log/nginx/example.com_access.log;
        error_log  /var/log/nginx/example.com_error.log;

        listen [::]:443 ssl ipv6only=on http2; # managed by Certbot
        listen 443 ssl http2; # managed by Certbot

        ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # managed by Certbot
        ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; # managed by Certbot
        include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
        ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot    
}

NginxでHTTP/2サポートを有効にする

変更をファイルに保存して閉じます。

次に、NGINXの構成構文を確認し、問題がない場合は、Nginxサービスを再起動します。

# nginx -t
# systemctl restart nginx

次に、ウェブブラウザを開いて、ウェブサイトが HTTP / 2で配信されているかどうかを確認します 。

http://www.example.com

HTTPヘッダーにアクセスするには、表示されたWebページを右クリックし、検査を選択します。 オプションのリストから開発者ツールを開き、ネットワークをクリックします。 タブをクリックして、ページをリロードします。

プロトコルで確認してください サイトで使用されているヘッダーを確認します(プロトコルヘッダーが表示されない場合は、名前などのヘッダーのいずれかを右クリックします。 、次にプロトコルを確認します リストからヘッダーとして表示します。

サイトがHTTP/ 1.1で実行されている場合 、プロトコルの下 、 http / 1.1が表示されます 次のスクリーンショットに示すように。

HTTP/1.1で実行されているWebサイト

HTTP / 2で実行されている場合 、プロトコルの下 、h2が表示されます 次のスクリーンショットに示すように。ブラウザのキャッシュを無効にして、ウェブサーバーから直接提供されている最新のコンテンツを表示することもできます。

HTTP/2.0で実行されているWebサイト

それで全部です!詳細については、ngx_http_v2_moduleモジュールのドキュメントを参照してください。下記のフィードバックフォームからお気軽にご質問ください。

共有は思いやりがあります…
Facebookで共有するTwitterで共有するLinkedinで共有するRedditで共有する
Ubuntu
  1. NGINXでHTTP2を有効にする方法

  2. UbuntuとCentOSのNginxでHTTP/2を有効にする方法

  3. Debian9でHTTP/2サポートを使用してNginxを設定する方法

  1. NginxでHTTP/2を有効にする方法

  2. NginxでTLS1.3を有効にする方法

  3. Ubuntu20.04のNginxでHTTP/2を構成する方法

  1. Ubuntu20.04でApacheを使用してHTTP/2プロトコルを有効にする方法

  2. Ubuntu 20.04、18.04、16.04のNginxでTLS1.3を簡単に有効にする方法

  3. Ubuntu18.04および16.04のNginxでTLS1.3を有効にする方法