人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

lighttpdでpythonを使いたいのですが、モジュールやfast-cgiの設定をしても動作しません。
どのように設定すれば動くのでしょうか。

●質問者: takets
●カテゴリ:コンピュータ
✍キーワード:CGI lighttpd Python モジュール
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● kai10
●100ポイント

http://techgame.net/projects/Framework/wiki/TracFastCgi

TracFastCgi - TechGame Python Framework - Trac

python は使ってないので、外してたらごめんなさい。それと、リンク先はどれも英語です。lighttpdは、まだ情報が少ないですね。


lighttpdで cgiを使うための最小設定は、こんな感じです(phthonは、予想)。

server.modules += (”mod_cgi”)

cgi.assign = (

”.bin” => ””,

”.py” => ”/usr/bin/python”,

”.pl” => ”/usr/bin/perl”,

”.cgi”=> ”/usr/bin/perl”,

”.rb” => ”/usr/bin/ruby”

)


lighttpdで fastcgiを使うには2通りやり方があります。

1つは、1つめのURLの様なやり方。リンク先の trac は、pythonで書かれたものらしいので、やり方は同じだと思います。

phpだと”bin-path”にphpを指定するようですが、スクリプトによっては、そこにスクリプトそのものを指定する必要があります。

http://moinmaster.wikiwikiweb.de/HelpOnInstalling/FastCgi

HelpOnInstalling/FastCgi - MoinMaster

http://www.incremental.de/products/lighttpd/download/spawn-fcgi....

2つは、spawn-fcgi を使って、lighttpdとは別に起動する方法です。

fastcgi.server = (

”.fcgi” => (

”localhost” => (

”host” => ”127.0.0.1”,

”port” => 1111,

”check-local” => ”disable”

),

(

”host” => ”127.0.0.1”,

”port” => 1112,

”check-local” => ”disable”

),

(

”host” => ”127.0.0.1”,

”port” => 1113,

”check-local” => ”disable”

),

(

”host” => ”127.0.0.1”,

”port” => 1114,

”check-local” => ”disable”

)

),

)

上のような設定を行い、lighttpdを起動します。その後で、

# sudo -u www-data spawn-fcgi -f /home/foo/public_html/index.fcgi -p 1111

# sudo -u www-data spawn-fcgi -f /home/foo/public_html/index.fcgi -p 1112

# sudo -u www-data spawn-fcgi -f /home/foo/public_html/index.fcgi -p 1113

# sudo -u www-data spawn-fcgi -f /home/foo/public_html/index.fcgi -p 1114

という感じで、port指定をしてプロセスを起動します。あるいは、unix-domain socketを指定することも出来ます。www-dataは、lighttpdを動かしているuserです。ただ、こちらだと起動プロセス数の動的管理は出来ないんじゃないかと思います。それでも、こっちの方が処理が早いという記述をどこかで見ました。


どちらのやり方でも、rubyでですが、ちゃんと動くことは確認しています。

◎質問者からの返答

ありがとうございます。試してみます

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ