Ubuntu で Apache を使用して HTTP/2 を構成、有効化、またはセットアップする方法。 HTTP/2 は、待ち時間を短縮し、プロトコルのオーバーヘッドを最小限に抑え、HTTP/1 よりも多くの効率的な機能を実現するために開発されたプロトコルです。
このガイドでは、Apache で HTTP/2 を有効にする方法を学習します。このセットアップは、Ubuntu 20.20 OS および Apache 2.4.41 を使用する Google クラウド コンピューティング エンジン インスタンスでテストされています。
前提条件
<オール>HTTP/2 を機能させるには、上記の 2 つの要件が整っていることを確認してください。
このコマンドを使用して Apache のバージョンを確認してください。
apache2 -v
Ubuntu 20.04 では、以下のような出力が得られます。
Server version: Apache/2.4.41 (Ubuntu) Server built: 2021-02-08T08:16:15
HTTP/2 Apache モジュールを有効にする
a2enmod
を使用して HTTP/2 モジュールを有効にすることができます コマンド。
sudo a2enmod http2
HTTP/2 を使用するように Apache 仮想ホストを構成します。
HTTP 仮想ホスト構成と Protocol
を編集します
sudo nano /etc/apache2/sites-available/ssl.conf
ssl.conf を自分のファイル名に置き換えてください。
以下を <VirtualHost *:443>
の下に追加します
Protocols h2 http/1.1
構成は以下のようになります。
<VirtualHost *:443> Protocols h2 http/1.1 ...
ヒット CTRL+X
続いて Y
および ENTER
ファイルを保存して閉じます。
変更を有効にするために Apache を再起動してください。
sudo service apache2 restart
PHP に HTTP/2 を使用するように Apache を構成する
デフォルトでは、Apache は mod_php
を使用します MPMで。 HTTP/2 は prefork モジュールをサポートしていません。そのため、mod_php
と互換性のない Event MPM を使用する必要があります。 .したがって、PHP-FPM を構成する必要があります。
PHP モジュールを無効にします。
sudo a2dismod php8.0
prefork MPM モジュールを無効にします。
sudo a2dismod mpm_prefork
Event MPM、Fast_CGI、および setenvif モジュールを有効にします。
sudo a2enmod mpm_event proxy_fcgi setenvif
PHP-FPM をインストールします。
sudo apt install php8.0-fpm
PHP-FPM を起動します。
sudo systemctl start php8.0-fpm
Apache で PHP-FPM 構成を有効にします。
sudo a2enconf php8.0-fpm
変更を有効にするために Apache を再起動してください。
sudo systemctl restart apache2
これで、サーバーで HTTP/2 が有効になります。
テスト構成
inspect 要素でコンソールを開いて Web サイトをロードすると、プロトコルが h2
として表示されます。 HTTP/2 が実行されていることを確認します。

それでおしまい。これで、Apache で HTTP/2 が有効になりました。
結論
これで、Ubuntu 20.04 で Apache を使用して HTTP2 を有効にする方法を学習しました。
御時間ありがとうございます。問題やフィードバックに直面した場合は、下にコメントを残してください。