Plesk 12.5 が HTTP/2 に対応しました

Created:

2016-11-16 13:08:46 UTC

Modified:

2017-06-17 12:20:21 UTC

18

Was this article helpful?


Have more questions?

リクエストを送信

Plesk 12.5 が HTTP/2 に対応しました

はじめに

HTTP/2(以前の名前は HTTP/2.0)とは、ワールドワイドウェブ(WWW)で使用されている HTTP ネットワークプロトコルの 2 番目のメジャーバージョンです。

2015 年 5 月に標準化された HTTP/2 は、モダンウェブの時代において HTTP 1.1 が抱えるいくつかの重大な問題に対処するために策定されました。

  • HTTP/2 は NGINX ウェブサーバのバージョン 1.9.5 以降でサポートされています。
  • 現在、HTTP/2 はほとんどの主要ウェブブラウザでサポートされています。
  • HTTP/2 の利点を活用するためにお客様のサイトに何らかの変更を加える必要はありません。

現在、Plesk 12.5 のお客様には HTTP/2 をすぐにお使いいただけるようになっています。

注: HTTP/2 をサポートするのは SSL サイトのみです。非 SSL サイトは引き続き HTTP/1.x で機能します。これは NGINX ウェブサーバおよびウェブブラウザの制約です。

NGINX を使用するクライアントのウェブサイトで HTTP/2 サポートを有効化するには

HTTP/2 のサポートには Plesk 12.5.30 Update#28 および NGINX 1.9.14(このアップデートに含まれます)がインストールされている必要があります。

  • Plesk 12.5.30 Update #28 以降をインストールします。(https://kb.plesk.com/jp/128626)
  • NGINX ウェブサーバをバージョン 1.9.14 以降 に更新し、実行していることを確認してください。

これは、 Tools & Settings -> Server Components ページと Tools & Settings -> Services Management ページから実行できます。

  • SSH 経由で root としてサーバにログインし、以下のコマンドラインユーティリティを使用して Plesk で HTTP/2 のサポートを有効化します。

    RedHat/CentOS:

    #/usr/local/psa/bin/http2_pref enable

    Debian/Ubuntu:

    #/opt/psa/bin/http2_pref enable

    最終ステップで、NGINX ウェブサーバが最先端のセキュアな暗号で TLS プロトコルを使用するようにチューニングされ、ウェブサーバの構成全体が再構築され、'SSL サポート' が有効なすべてのクライアントのサイトが HTTP/2 に移行されます。HTTP/2 への移行中に発生したエラーや警告をチェックするには、コマンドの出力結果を確認します。

HTTP 1.x に戻して HTTP/2 を無効化したい場合は、以下のコマンドを使用します。

    #/usr/local/psa/bin/http2_pref disable

既知の問題と制約

HTTP/2 に必要な最先端の暗号を使用するためには、openssl 1.0.1 以降が必要になります。いくつかの古い OS(CentOS-5 や RHEL-5)では、古いバージョンの openssl を OS ベンダーが提供しています。

このような OS では HTTP/2 がサポートされない可能性があります。

また、トラブルシューティングについては、KB #128766 も参照してください。

よくあるご質問(FAQ)

  • ドメインで http/2 サポートが有効かどうかを確認するには?

回答: https://tools.keycdn.com/http2-test などのオンラインサービスを使用できます。

  • http2_pref ユーティリティから、カスタム仮想ホストテンプレートに関する警告が返されます。どうすればよいですか?
    # /usr/local/psa/bin/http2_pref enable
    WARNING: You are using a custom virtual host template(/usr/local/psa/admin/conf/templates/custom/domain/nginxDomainVirtualHost.php)

回答:トラブルシューティングについては KB #128766 を参照してください。この状況について、こちらの KB で説明しています。

  • ALPN はサポートされていますか?

回答:ALPN 拡張は、openssl v1.0.2 以降でなければ使用できず、まだ Plesk 12 のサポート対象 OS のベンダーによって提供されていません。

  • Apache ウェブサーバで HTTP/2 はサポートされていますか?

回答:Plesk は OS ベンダーの提供する Apache を使用します。Apache ウェブサーバでは Apache 2.4.17 以降で HTTP/2 がサポートされますが、まだ Plesk 12 のサポート対象 OS では使用できません。HTTP/2 のほとんどの改良点は、Plesk で推奨されるように Apache の手前で NGINX を使用することで正しく機能します。追加オプションとして、Plesk パネルに静的ファイルを提供するように NGINX を構成して、Apache を処理から除外できます。このオプションの詳細: 仮想ホスト用に nginx 設定を調整する

  • HTTP/2 を有効化した後で、一部のブラウザから私のウェブサイトに接続できなくなりました。なぜですか?

回答:HTTP/2 プロトコルの仕様に、すべての実装で TLS 1.2 を使用しなければならないと規定されています。また、暗号化された接続のために、強力な暗号リストを使用することをお勧めします。詳しくは、RFC #7540 を参照してください( https://tools.ietf.org/html/rfc7540 )。また、SSLLabs( https://www.ssllabs.com/ssltest/index.html )でセキュリティが "A" に分類されるように、強力でセキュアな暗号リストを選択しています。これについて十分な専門知識をお持ちの場合、暗号リストをカスタマイズして、古いブラウザのサポートを許可することもできます。詳細は以下の質問を参照してください。

  • NGINX 用に独自の TLS 暗号リストをセットアップするには?

回答:HTTP/2 を有効化した後で、使用可能なプロトコルと TLS 暗号リストをセットアップするには、Plesk の sslmng ユーティリティを使用します。例えば、Plesk とまったく同じ暗号リストを使用するには、以下のようなコマンドを実行します。

    #plesk sbin sslmng --services=nginx --custom --ciphers="EECDH+AESGCM+AES128:EECDH+AESGCM+AES256:EECDH+CHACHA20:EDH+AESGCM+AES128:EDH+AESGCM+AES256:EDH+CHACHA20" --protocols="TLSv1 TLSv1.1 TLSv1.2"

構成は /etc/nginx/conf.d/ssl.conf ファイルに保存されます。このファイルを手作業で編集することはお勧めしません。

  • 何か障害が発生した場合にどのようにトラブルシューティングすればよいですか?

回答:トラブルシューティングについては KB #128766 を参照してください。

参考情報

他にご質問がございましたら、リクエストを送信してください
ログインしてコメントを残してください。