サーバー専門のフリーランスエンジニアです。クラウドサーバー環境を利用してWebサイト、ITシステムのサーバー全体構成やサーバー内部構成をデザインします。curlでHTTP/2リクエストを実行するための設定手順をまとめました。curlでHTTP/2リクエストを実行するための設定手順」をまとめます。HTTPサーバーのHTTP/2対応ではなく、HTTPクライアントのHTTP/2対応のお話です。7.1がインストールされているものとします。7.0でも、同じ手順でいけると思います。curlでHTTP/2リクエストを実行するために必要なパッケージは以下です。定義済み定数http://php.net/manual/ja/curl.constants.phpopensslについては、1.0.1でもよいのかもしれませんが、TLS接続でHTTP/2を利用する場合、使用するOpenSSLライブラリがALPNをサポートしている必要があるそうです。1.0.2e以上」という条件が出てきたのだと思われます。必要なソフトウェアをアップデート、インストールする前に、それぞれの現在のバージョンを確認します。libssh2/1.4.2↑★の箇所から、curlのSSLは、OpenSSLではなく、NSSを使用していることがわかります。アップデート、インストールALPS対応opensslのインストールnghttp2ライブラリのインストールHTTP/2対応curlのインストールを順に行います。バージョン1.0.1です。しても、1.0.1ベースでのセキュリティアップデートにしかならないので、1.0.2系のソースをダウンロードして、ビルド、インストールします。7における手順との大きな違いです。6リポジトリの1.0.1はそのまま残っています。opensslなどは、ここでインストールしたopensslライブラリやヘッダを参照してビルドしない限り、インストールした1.0.2は使用されません。Tools’で、開発ツールをグループインストールしておくとよいでしょう。OpenSSLオフィシャルサイトのソースダウンロードページhttps://www.openssl.org/source/より、1.0.2系の最新バージョンのcurlのソースをダウンロード、展開します。オプションをつけます。linux-x86_64.Configureが正しく終了したことを確認のうえ、ビルド、インストールします。インストールされました。メッセージ出力のとおり、ライブラリのディレクトリをライブラリパスに追加します。配下のopensslライブラリが追加されたことを確認します。1.0.2のバージョンを確認します。2017nghttp2ライブラリのインストールHTTP/2対応のcurlをビルドする際に、nghttp2が必要となるのでインストールします。nghttp2のソースをダウンロードしてビルドしてもよいのですが、EPELリポジトリにパッケージがあるので、yumでインストールしたほうが簡単ですし、管理しやすいです。nghttp2コマンドではなく、ライブラリと、pkgconfig向けファイルが必要なので、libnghttp2とlibnghttp2-develをインストールします。7に含まれるcurlは、バージョンが7.19.7と古いため、最新バージョンのソースからビルドしてインストールします。その前に、curlのビルド時にzlibを含めるため、zlib-develをインストールします。※zlibがなくてもよいかもしれませんが、gzip圧縮でWebコンテンツをダウンロードできるようにしておいても損はないでしょう。0:1.2.3-29.el6curlオフィシャルサイトのダウンロードページhttps://curl.haxx.se/download.htmlより、最新バージョンのcurlのソースをダウンロード、展開します。--helpconfigureの実行時は、以下のオプションをつけます。SSLサポートのオプションは、1.0.2のライブラリファイルやヘッダ、pkgconfigファイルをインストールしたディレクトリを指定するのがポイントです。OpenSSLを使用していること。