27
24

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

h2oAdvent Calendar 2014

Day 4

3分で試す h2o

Last updated at Posted at 2014-12-03

h2o の詳しいことや、その内部構造やら

多分他の日の誰かが書いてくれると思いますので、私はユーザ目線でまったり触ってみる系のエントリを書きます。

h2o を一般的なリバースプロキシ、静的ファイル配信サーバとして使いたい

これをお読みの方の多くは Nginx や Apache を使っているかなと思います。
h2o を使ってみようかなと考えるとき、まず考える用途はこれを置き換えることでしょう。
よくあるユースケースとして “静的ファイルを h2o でホストし、アプリケーションをバックエンドの app サーバに投げる” という設定をやってみます。

h2o をすぐ試したい

h2o の性能を余す所なく体験するには、オーバーヘッドのない環境でビルドして動かすのが一番ですが、まずは運用に乗るかどうか設定や取り回しを検証するのをやりたいと思うのは当然の所かと思います。
そんなわけで、 h2o をすぐお使いいただける Docker image を用意しました。
Docker をお使いの方は下記コマンドですぐに h2o を起動させることができます。

$ docker run -d -p 8080:8080 myfinder/docker-h2o /path/to/h2o.conf

h2o の config 例

listen: 8080
hosts:
  default:
    paths:
      /static:
        file.dir: /path/to/docroot
      /:
        proxy.reverse.url: http://127.0.0.1:5000/
    access-log: /dev/stdout

バックエンドのアプリケーションを用意する

今回は動作を見るだけなので、下記のようなワンライナーで良いでしょう。

$ plackup -e "sub { [ 200, ['Content-Type' => 'text/plain'], [ ‘Hello h2o World' ], ]; }"

アクセスしてみる

バックエンド

スクリーンショット 2014-12-04 2.16.14.png

静的ファイル

スクリーンショット 2014-12-04 2.16.24.png

  • 設定通り / はバックエンドに、 /static は静的ファイルにアクセスできましたね :)

まとめ

本エントリでは h2o をリバースプロキシ&静的ファイルホスティングサーバとして使うための基本的な設定例を示しました。
一般的なリバースプロキシとしての利用ならば、それほど苦労なく使えるので試験できる環境がある方はこういったやり方で試していく事ができます。

27
24
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
27
24

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?