LoginSignup
11
11

More than 5 years have passed since last update.

Apache Traffic Server で HTTP/2 を有効にする方法

Last updated at Posted at 2015-09-23

はじめに

この記事は Apache Traffic Server (以下 ATS) で Hypertext Transfer Protocol Version 2 (以下 HTTP/2) を有効にする 最低限 の設定方法をまとめたものです。

Step 0: いつくかの前提

  • OpenSSL 1.0.1系 もしくは 1.0.2系
  • ATS v6.0.0
    • ATS は HTTP/2 over TLS のみをサポートしているので、HTTP/2 を有効にするには SSL/TLS の設定が必要です。
    • /usr/local/ 下にインストールしてあるとします。
    • ATS のビルドとインストールについては Getting Started — Apache Traffic Server documentation を参照してください。
    • デフォルトでは records.config などの設定ファイルは /usr/local/etc/trafficserver/ 下にあります。

Step 1: SSL/TLS の設定

ポートの設定

仮に 4443 ポートで HTTP/2 を受けたいとします。records.configproxy.config.http.server_ports の設定に 4443:ssl を追加します。

records.config
CONFIG proxy.config.http.server_ports STRING 8080 4443:ssl

証明書の設定

仮にサーバー証明書(example.pem)と秘密鍵(example.key)を /usr/local/etc/trafficserver 下に置いているとします。
ssl_multicert.config に次の設定を追加します。

ssl_multicert.config
ip_dest=* ssl_cert_name=example.pem ssl_key_name=example.key
  • 注1: ssl_cert_name=, ssl_key_name= の設定値が相対パスの場合、records.configproxy.config.ssl.server.cert.path の設定値からの相対パスになります。デフォルトでは /usr/local/etc/trafficserver です。
  • 注2: 証明書/秘密鍵を root からのみ読めるようにしている場合 records.configproxy.config.ssl.cert.load_elevated の設定を 1 に変更する必要があります。

Step 2: HTTP/2 の設定

records.configproxy.config.http2.enabled の設定を 0 から 1 に変更します。

records.config
CONFIG proxy.config.http2.enabled INT 1

Step 3: 起動

ATS を起動して 4443 ポートにアクセスしてみてください。

$ trafficserver start

設定を書き換えた場合、ATS の再起動もしくは設定のリロードを行ってください。

$ trafficserver restart
or
$ traffic_ctl config reload
  • 注3: 設定項目によってはリロードでは反映されず、再起動が必要なものもあります。

See Also

11
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
11