2012-02-23 6 views
4

これは明白な問題ですが、申し訳ありませんが、私は本当にこれを理解しようとしています。fcgiのDjangoアプリはデーモン化されていないモードでしか動作しません

私はfcgiプロセスとして、Lighttpdをフロントサーバーとして実行しているDjangoアプリケーションを持っています。

私は最初の文書で示唆されているように私は私のWebブラウザからアプリケーションにアクセスしようとしたとき、私は「利用できないページ」を取得し、しかし(下図)

python ./manage.py runfcgi method=threaded host=127.0.0.1 port=9030 

をDjangoのFCGIプロセスを実行してみましたメッセージ。

は、その後、私は(画面上にいくつかのエラーメッセージを表示することを望んで)非デーモン化モードでfcgiのプロセスを実行しようとしたが、この時間は、私は自分のブラウザからアプリケーションにアクセスすることができた、とすべてがうまく働きました。

python ./manage.py runfcgi method=threaded host=127.0.0.1 port=9030 daemonize=false 

私のローカル開発マシン上で、すべてがfcgiのプロセスをデーモン化された場合でも正常に動作し、一方、私は、サーバー上でこの奇妙な動作が発生します。

私はまた、 'スレッド'メソッドの代わりに 'prefork'を使用しようとしましたが、それも役に立ちません。私は何もそれと間違っている疑うけれども、私は、私のLighttpdの設定ファイルの関連部分を掲示しています

...

$HTTP["host"] == "ideas.mydomain.com" { 
    debug.log-request-handling = "enable" 
    fastcgi.debug = 1 
    fastcgi.server = (
     "/ideas.fcgi" => (
      "main" => (
       "host" => "127.0.0.1", 
       "port" => 9030, 
       "check-local" => "disable", 
      ) 
     ), 
    ) 

    url.rewrite-once = (
     "^(/.*)$" => "/ideas.fcgi$1", 
    ) 
} 

Lighttpdのからのエラー・ログには、それが実際にしようとしていることを示しているこれらの2行を持っていますfcgiプロセスに接続します。

2012-02-28 08:48:49: (mod_fastcgi.c.3071) got proc: pid: 0 socket: tcp:127.0.0.1:9030 load: 1 
2012-02-28 08:48:49: (mod_fastcgi.c.1492) released proc: pid: 0 socket: tcp:127.0.0.1:9030 load: 0 

誰かが間違っている可能性について手掛かりを持っていますか? fcgiを起動するためのコマンドラインオプションでdebug = trueを指定しても、fcgi関連のデバッグログは表示されません。 fcgiプロセスからのデバッグログを見るには何か特別な処理が必要ですか?

ありがとうございました、ありがとうございました。

+0

lighttpdログとは – jpic

+0

django fastcgiログを投稿できますか? (ヒント:set runfcgi引数** errlog **と** outlog **)。 – jpic

+0

@jpic errlogには意味のあるものはありませんが、アウトログも生成するようにサーバーを設定し、ここに投稿します。配備の途中でちょうど1,2日をください。ありがとう。 – Parag

答えて

1

lighthttpdのconfigでデバッグを有効にしてから、fastcgi.debug = 1を設定することから始めます。

すべてのログとデバッグがオンになったら、サイトにアクセスしてエラーをログに保存してみます。次に、メインのエラーログを調べる必要があります。

デフォルトの場所は/var/log/lighttpd/error.logです。

+0

Lighttpdでfastcgiのデバッグサポートを追加しました。私は私の質問を編集し、Lighttpdが実際に指定されたTCPポート上のfcgoプロセスに接続していることを示唆するログファイルから2行を貼り付けました。ところで、$ HTTP ["host"] == "ideas.mydomain.com" {...}の本体にデバッグサポートのための行を追加するのは正しいですか(編集した質問に表示されています)? – Parag

関連する問題