mod_wsgi
サポートされていない共有サーバーで Pyramid フレームワークを使用しています。プロジェクトをデプロイすると、500 個のエラーが発生し始めましたが、実際には役立つエラー メッセージはありません。
[Thu Sep 22 21:40:52 2011] [warn] [client IP] (104)Connection reset by peer: mod_fcgid: error reading data from FastCGI server
[Thu Sep 22 21:40:52 2011] [error] [client IP] Premature end of script headers: dispatch.fcgi
[Thu Sep 22 21:40:53 2011] [warn] [client IP] (104)Connection reset by peer: mod_fcgid: error reading data from FastCGI server
[Thu Sep 22 21:40:53 2011] [error] [client IP] Premature end of script headers: dispatch.fcgi
何が起こっているのかよくわかりませんでしたが、(部分的な) 事故.ini
で、postgres 接続ではなく sqlite 接続を使用する別のアプリのファイルをコピーしてしまいました。突然、私のアプリが起動して実行されました。しかし、応答が突然途切れているように見えることに気付きました (応答の最後がクライアントにフラッシュされていませんでした)。
何が起こっているのかを理解しようとしてキーボードに頭をぶつけていたので、他の誰かが同様の症状に遭遇し、解決策を見つけたことを願っています.
私の fcgi エントリは次のようになります (まったく役に立たない場合)。
app = "/dir"
inifile = "production.ini"
import sys, os
sys.path.insert(0, app)
from paste.deploy import loadapp
wsgi_app = loadapp("config:%s/%s" % (app, inifile))
if __name__ == "__main__":
from flup.server.fcgi import WSGIServer
WSGIServer(wsgi_app).run()
別のスレッドで WSGI サーバーを起動し、メイン スレッドを一定期間スリープ状態にすることを提案する投稿をどこかで見つけたのを覚えていますが、それは恐ろしいハックのように思えました。