Web サービスの HTTP/2 プロトコルをサポートするように Docker コンテナーで Nginx プロキシ サーバーを構成するにはどうすればよいですか?
はじめに
HTTP/2 プロトコルは、HTTP/1.1 のアップグレード バージョンであり、パフォーマンスとセキュリティ機能が向上し、Web サーバーのハイパーテキスト転送プロトコルの新しい標準になりました。高性能 Web サーバーとして、Nginx は HTTP/2 プロトコルの使用もサポートしています。この記事では、Web サービスの HTTP/2 プロトコルをサポートするために Docker コンテナーで Nginx プロキシ サーバーを構成する方法を紹介します。
ステップ 1: Docker コンテナーを作成する
まず、ローカル コンピューター上に Docker コンテナーを作成する必要があります。 Docker コマンドを使用して新しいコンテナーを作成できます。例:
docker run -d -p 80:80 --name nginx-proxy nginx:latest
上記のコマンドは、nginx-proxy という名前のコンテナーを作成し、ローカル コンピューターのポート 80 をコンテナー内のポート 80 にマップします。
ステップ 2: Docker コンテナに入る
次のコマンドを使用して、作成したばかりのコンテナにに入ります:
docker exec -it nginx-proxy bash
このコマンドは、nginx-proxy コンテナの bash ターミナルに入ります。
ステップ 3: Nginx 構成ファイルを編集する
コンテナ内で、Nginx 構成ファイルを編集して HTTP/2 プロトコルを有効にする必要があります。デフォルトでは、Nginx の設定ファイルは /etc/nginx/nginx.conf にあります。テキスト エディタを使用してファイルを開きます。例:
vim /etc/nginx/nginx.conf
開いたファイルで、次の構成項目を見つけます:
listen 80;
次に、次の内容を行の下に追加して HTTP / を有効にします。 2 プロトコル:
listen 443 ssl http2;
この構成は、Nginx がリッスンするポートを 443 に変更し、SSL および HTTP/2 プロトコルを有効にします。
ステップ 4: SSL 証明書を生成する
HTTP/2 プロトコルでは SSL 暗号化通信の使用が必要なため、Nginx 用の SSL 証明書を生成する必要があります。 OpenSSL ツールを使用して自己署名証明書を生成できます。コンテナーで次のコマンドを実行して、SSL 証明書を生成します:
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/nginx/ssl/nginx.key -out /etc/nginx/ssl/nginx.crt
上記のコマンドは、365 日間有効な自己署名証明書を生成し、秘密キーを /etc/nginx/ssl/nginx に保存します。キー ファイル 、証明書を /etc/nginx/ssl/nginx.crt ファイルに保存します。
ステップ 5: Nginx プロキシ サーバーを構成する
次に、Nginx プロキシ サーバー構成ファイルを編集する必要があります。通常、プロキシ サーバーの構成ファイルは /etc/nginx/conf.d/default.conf にあります。テキスト エディタを使用してファイルを開きます。例:
vim /etc/nginx/conf.d/default.conf
開いたファイルで、次の構成項目を見つけます:
location / { proxy_pass http://backend; }
次に、次の内容を構成項目の上に追加して、SSL を定義します。証明書を作成し、HTTP/2 プロトコルを有効にする:
listen 443 ssl http2; ssl_certificate /etc/nginx/ssl/nginx.crt; ssl_certificate_key /etc/nginx/ssl/nginx.key;
これらの構成は、Nginx に、以前に生成された SSL 証明書を使用し、HTTP/2 プロトコルを有効にするように指示します。
ステップ 6: Nginx サービスを再起動する
上記の構成を完了したら、構成を有効にするために Nginx サービスを再起動する必要があります。コンテナーで次のコマンドを実行して、Nginx サービスを再起動します。
nginx -s reload
これで、Nginx プロキシ サーバーが構成され、HTTP/2 プロトコルを使用する Web サービスがサポートされました。
結論
この記事の手順により、Web サービスの HTTP/2 プロトコルをサポートするように Docker コンテナ内の Nginx プロキシ サーバーを正常に構成できました。 HTTP/2 プロトコルを使用すると、より高速なパフォーマンスとより高いセキュリティが提供され、Web アプリケーションがコンテナ内でより効率的かつ確実に実行されるようになります。
以上がWeb サービスの HTTP/2 プロトコルをサポートするように Docker コンテナーで Nginx プロキシ サーバーを構成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。