Tokyo Promenade + nginx + Tokyo Cabinetのテスト環境を構築してみる 4
なんか本来の目的からかなり外れた構成になりつつありますので、完全に仕切り直そうかと……。
まずは先だってnginxのアンインストールと最新安定版のインストールをします。(アンインストールはSynapticを使うので省略。この際、完全削除指定でいきたいと思いますnginx.confは待避させておくといいでしょう)
また、libpcreが必要なので、Synapticからlibpcre3-dev(と、依存しているlibpcrecpp0)及び、libssl-devを導入しておきます。
% cd /home/ユーザ名/適当な作業用ディレクトリ
% wget http://sysoev.ru/nginx/nginx-0.7.63.tar.gz
% tar zxvf nginx-0.7.63.tar.gz
% cd nginx-0.7.63.tar.gz/
% ./configure
これで、以下のような結果になるはずです。
Configuration summary
+ using system PCRE library
+ OpenSSL library is not used
+ md5: using system crypto library
+ sha1 library is not used
+ using system zlib library
この際、これでmakeは通りそうなのでよしとします(多分、SSL使わないと思いますし)。続いて、
% make
% sudo paco -D make install
ここで、一応、以下のようにするとnginxが動くはずです。
% sudo /usr/local/nginx/sbin/nginx
一旦止めます。
% sudo killall nginx
さて、ここからグダグダになっていきますが、以下のようにします。
% sudo vi /usr/local/nginx/conf/nginx.conf
そして、serverブロック(listen 80番しているもの)で、
location / {
root html;
index index.html index.htm;
}
を次のように書き換えます。
location / {
include proxy.conf;
proxy_pass http://127.0.0.1:8000;
}
それより少し下にあるerror_pageやlocation /50x.htmlブロックはコメントアウトしておきます。そして、thttpdを導入して、CGI処理はthttpdに振り分けるのがよい、とwikiには書かれていますが……すみません、ここで構築が面倒になってやめました。nginxのFastCGIサポートで動かせればまだいいのですが、これじゃリバースプロキシ/ロードバランサとしてnginxを使っているにすぎないので。(一応、thttpdじゃなくてLightttpdを使って試しに立ててみたところ、動くことは確認できました。後で確認したところ、この後でFastCGIに挑戦したときと同じ問題が出ていました。(2009/11/02 21:10追記)単純にロードバランスさせたいとかならこれもありかも知れませんね。Tokyo Promenadeでは意味がないと思いますけども……)
仕方ないので次回は、nginxの代わりにLighttpdを使って行ってみます。
なお、nginxは、以下のコマンドでアンインストールしました。
% sudo paco -r nginx-0.7.63
(確認は、paco -aで)