NginxからthttpdにリダイレクトさせてCGIを動かす
NginxではCGIが動きません。
http://d.hatena.ne.jp/omiyan/20101213/1292187680
素晴らしい日本語訳を引用させていただきます。
「わ、わたし(Nginx)は、CGIスクリプトなんか扱わないんだから。
CGIスクリプト周りって、いろんなハックするものがあるし、
そういうのに構うのって本当にいやだし、なんか普通じゃないしね」
か、かわいい///
Nginxかわいいよ!
そして
でもどうしても使いたいならって、Nginxはおともだちの軽量Webサーバ
「thttpd」の紹介(プロキシ方法)を載せている。またFastCGIだったら使える。
(Perl、PHP、PythonはFastCGI上で動作させる)
とのこと。
thttpdのTはtiny/turbo/throttling。小さいはいい事です。
やってみた。
ブログ記事に書くまでもないような内容ですが…
CentOSを使っているのでyumでthttpdをインストールしました。
thttp.conf
見せたくない値は適当に変えてます。
dir=/muda/muda/uryyy/www #chroot user=thttpd logfile=/var/log/thttpd.log pidfile=/var/run/thttpd.pid port=12345 host=127.0.0.1 charset=utf-8 cgipat=**.cgi|**.pl|**.py|**.rb
cgipatにCGIに使いそうな拡張子を設定しておいた。
port 12345で受け付けます。
nginx設定
server { # 中略 location ~* \.(cgi|pl|rb|py)$ { proxy_pass http://127.0.0.1:12345; break; }
拡張子がソレならport 12345に飛ばします。