kitak blog

Kみたいなエンジニアになりたいブログ

OpenRestyの導入とテスト

こんばんは. 今日はOpenRestyを通してNginxを触ってみます.

Nginxって?

高性能高速Webサーバだよ! プロキシサーバにも使えるよ!
ちなみに呼び方は「エンジンエックス」だよ! 「ンギンクス」じゃないよ!!

OpenRestyって?

Nginx+便利な拡張モジュール群なパッケージだよ! Luaを通してサーバの制御ができるよ!! 今回はほぼNginxの使い方の紹介ですが,後日,拡張モジュールで遊びたいのでOpenRestyを選択しました.

ダウンロードとインストール

基本的に公式ページ通りにやればいいです.僕はScientificLinux6.2にインストールしました.

yum install readline-devel pcre-devel openssl-devel #必要なパッケージをインストール
wget http://agentzh.org/misc/nginx/ngx_openresty-1.0.11.28.tar.gz #OpenRestyをダウンロード
tar xvfz ngx_openresty-1.0.11.28.tar.gz #解凍
cd ngx_openresty-1.0.11.28
./configure --with-luajit
make
make install

これで/usr/local配下にOpenRestyがインストールされました.

はじめの一歩

ホームディレクトリ配下に以下のような構成でディレクトリを作成します.

work
__conf
__logs
conf配下にnginx.confという設定ファイルを作成します. 以下のような設定を記述します.
error_log logs/error.log;
events {
    worker_connections 1024;
}
http {
    server {
        listen 8080;
        location / {
            default_type text/html;
            content_by_lua 'ngx.say("<p>hello, world</p>")';
        }
    }
}
細かくは説明しませんが,8080番のTCPポートでHTTPリクエストを受け付けます.ドキュメントルートにアクセスされたときに<p>hello, world</p>をレスポンスで返します. 起動してみましょう. 以下のようなコマンドを打ち込みます.
-pオプションで基準となるディレクトリを指定(この場合,workディレクトリ). -cオプションで先程記述した設定ファイルを指定します.
nginx -p `pwd`/ -c conf/nginx.conf
サーバが動いています. curlコマンドでサーバが動いているかどうか確認してみましょう.
curl http://localhost:8080/
ばっちり<p>hello, world</p>と返ってきました. サーバを終了させるときは以下のコマンドを実行させます.
nginx -s stop -p `pwd`/ -c conf/nginx.conf
以上で終わりです. 結構簡単ですよね? 今後はOpenRestyの拡張モジュールの扱いとかNginxそのものの使い方を紹介していきます