2006-01-17
CGI FastCGI, ruby
- Reference URI
- http://lowreal.net/logs/2006/01/17/1
- Written Time
- 2006-01-17T17:09:44+09:00
- Tags
-
- ruby
- cgi
- web
既存のスクリプトを修正せず、そのまま fcgi 化したい。
Web Server 側の設定の変更だけでいきたい。
fastcgi.server = ( ".rb" =>
( "localhost" =>
(
"socket" => "/tmp/fcgi-ruby.socket",
"bin-path" => "/usr/local/bin/ruby-fcgi.rb"
)
))
とか書くとして (仮定)、ruby-fcgi.rb を考えたい。しかしながら FastCGI の仕組みがいまいちわかってないのでとりあえず保留。
UNIX ソケットであらかじめ起動してある CGI 実行プロセスと通信する?みたいなのはわかるんだけど、実際のとこ、この bin-path に指定したプログラムと、実際にリクエストされたファイルの関係がわからない。普通の CGI は引数にリクエストされたファイルを渡すけど、FastCGI はどうなるんだろう。というところで、試そうと思うんだけど、ちょっと環境構築に手間取っている。
というか、できるなら既にそういう方法が発見できるはずなんだけど、ないってことはやっぱないんだろうか。Ruby に環境を保存しておく機能がないんだっけ。callcc ?
UNIX ソケットで、とは限らないようだ。TCP/IP でもできる (すなわち、別のサーバにもおける) みたい。
Inserted at 2006-01-17T17:52:51+09:00
普通の CGI は引数にリクエストされたファイルを渡すけど
って嘘つきすぎ(w
CGI はただたんにリクエストされたファイルを起動してるだけだ。shebang を混同してる。
Inserted at 2006-01-17T17:54:22+09:00
うーん。よくわからん。FastCGI を使ったアプリケーションを作るたびに、HTTPD の設定ファイルも書き換えないといけないんだろうか。
Inserted at 2006-01-17T18:00:53+09:00
ENV を書き換える方法がないから無理だなこれ。
Inserted at 2006-01-17T22:28:03+09:00
Trackback URI: http://lowreal.net/logs/2006/01/17/1.trackback
NULL
Generated with Taglibro
この日記は Taglibro と呼ばれる XML ベースの XSLT をテンプレートとして使ったシステムを使っています。現在の Taglibro は Ruby, ruby-xslt, libxml-ruby による実装です。ソースコードはとりあえず公開していません。
Comments (2)