h2oをビルドする

証明書の準備もできたのでh2oをビルドしてみます。
※各バージョンは2016年12月15日現在のものです。

■必要そうなパッケージのインストール
事前に必要そうなパッケージを入れておきます。

yum install \
gcc-c++ \
libarchive \
libarchive-devel \
expat \
expat-devel \
json-c.x86_64 \
json-c-devel.x86_64 \
openssl.x86_64 \
openssl-devel.x86_64 \
ruby-devel \
texi2html \
libtool \
automake \
python27-sphinx

■cmakeをインストール
cmakeが必要なのでインストールします。
こちらのサイトからバイナリをダウンロードして使いました。
ソースからビルドも試したけど、うまくいかないのであきらめました。
https://cmake.org/download/

適当なディレクトリで以下のコマンドを実行しました。

■yamlをインストール
http://pyyaml.org/download/libyaml/
こちらからソースをダウンロードしてビルドします。

■libuvをインストール
https://github.com/libuv/libuv
こちらからgit cloneしてビルドします。

■CUnitをインストール
http://jaist.dl.sourceforge.net/project/cunit/CUnit
こちらのサイトからソースをダウンロードしてビルドしました。

■nettleをインストール
https://git.lysator.liu.se/nettle/nettle
こちらのサイトからgit cloneしてビルドしました。

■libwslayをインストール
https://github.com/tatsuhiro-t/wslay
こちらのサイトからgit cloneしてビルドします。

■ライブラリパスを追加する
/etc/ld.so.conf.d/ に usr-local-lib.conf とか適当なファイル名で以下の内容を記述する。

以下のコマンドでキャッシュを作成する。

ldconfig -p で以下のライブラリが追加されていることを確認する。

■h2oをビルドする
https://github.com/h2o/h2o
こちらのサイトからgit cloneしてビルドする。

■h2oを実行するユーザーを作成する
この辺はお好みで。
apacheやnginxから移行するなら、そのユーザーでもいいかも。
グループIDやユーザーIDも、他とぶつからないように適当に。

ドキュメントルートとログディレクトリも作成しておきました。

■h2o.conf を作成
https://h2o.examp1e.net/configure/quick_start.html
こちらのサンプルを参考に h2o.conf を作成します。
先に作ったサーバ証明書を指定して、リダイレクトなどやってみます。
/usr/local/etc/h2o.conf としてこんな内容で作成しました。

このサイトで実際に使っている内容なので、パスやらドメイン名は好きなように書き換えてください。

起動スクリプトや、ログのローテートも必要になります。
まつもとりー様のサイトを参考にさせていただきました。
http://hb.matsumoto-r.jp/entry/2015/07/31/220948
何もかもめちゃくちゃ参考になりました。
ありがとうございます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です