自宅サーバーUbuntuをhttp/2化した
ディストリが最新とかではないのでパッケージシステム経由ではインストール出来ない
ソースからインストール
- git clone
Install - H2O - the optimized HTTP/2 server
でインストール
ちょっと回り道して
apt-get install locate git cmake build-essential checkinstall autoconf pkg-config libtool python-sphinx wget libcunit1-dev nettle-dev libyaml-dev libuv-dev -y
を予めしていた。makeはそんなに時間かからない
Apacheの設定ファイルのLISTENポート変更して再起動しておく
h2oで443を待ち受けたいので4430とかにずらしておく。
SSLのpemとか
fullchainが欲しかったので再作成。let's encrypt最高。
./letsencrypt-auto certonly --standalone --email hoge@example.com --domain hoge.example.com
設定ファイル
Quick Start - Configure - H2O - the optimized HTTP/2 server
を参考にする。
下記のようになった。
listen: port: 443 ssl: certificate-file: /etc/letsencrypt/live/hoge.netvolante.jp/fullchain.pem key-file: /etc/letsencrypt/live/hoge.netvolante.jp/privkey.pem user: www-data hosts: "hoge.netvolante.jp": paths: /: proxy.reverse.url: http://127.0.0.1/ access-log: /var/log/h2o/access-log error-log: /var/log/h2o/error-log pid-file: /tmp/h2o.pid
/var/log/h2o掘ったりとかchmodとかは省略するね。
initスクリプト
hb.matsumoto-r.jp
を参考に下記のようになった。我が家はubuntuが元気に稼働しておる。
chmod +xとかは省略するね。
#!/bin/bash #chkconfig: 2345 85 15 #descpriction: h2o Web Server # source function library #. /etc/rc.d/init.d/functions #こんなのねぇ。 RETVAL=0 SERVICE_NAME=`basename $0` start() { echo -n $"Starting $SERVICE_NAME: " /usr/local/bin/h2o -m daemon -c /etc/h2o/h2o.cfg RETVAL=$? if [ $RETVAL == 0 ]; then echo success else echo failure fi echo } stop() { echo -n $"Stopping $SERVICE_NAME: " kill -TERM `cat /tmp/h2o.pid` RETVAL=$? if [ $RETVAL == 0 ]; then echo success else echo failure fi echo } reload() { echo -n $"Graceful $SERVICE_NAME: " kill -HUP `cat /tmp/h2o.pid` RETVAL=$? if [ $RETVAL == 0 ]; then echo success else echo failure fi echo } case "$1" in start) start ;; stop) stop ;; reload|graceful) reload ;; restart) stop start ;; *) echo $"Usage: $0 {start|stop}" exit 1 esac
h2o起動する。OKっぽい。
結果
Content-Encoding: gzip Content-Length: 1892 Content-Type: text/html Date: Tue, 22 Dec 2015 15:37:20 GMT Server: h2o/1.7.0-alpha1 Vary: Accept-Encoding X-Firefox-Spdy: h2 X-Powered-By: PHP/5.5.9-1ubuntu4.14
感想
あっさりとできた。30分ぐらい?