LinuxDebian6ディストリビューションに新しいSatchmoストアをインストールしました。標準のDjango開発サーバーは完璧に動作しますが、しばらくするとnginx + FastCGIを使用する本番モードで(またはメモリ制限がいっぱいになった後のように見えます)、nginxは「502Badgateway」エラーを出力します。
ログファイルで、次の行を見つけました。
2011/12/02 02:38:57[エラー]29894#0:* 91439 recv()が失敗しました(104:ピアによって接続がリセットされました)アップストリームからの応答ヘッダーの読み取り中、クライアント:2.95.158.164、サーバー:my-secret- host.com、リクエスト: "GET / HTTP / 1.1"、アップストリーム: "fastcgi:// unix:/var/run/www/file.sock:"、ホスト: "my-secret-host.com"
インターネットでよく検索していましたが、nginxがdjangofastcgiサーバーから正しい応答を取得できないことがわかりました。djangoサーバーのさまざまな設定(maxchildren、maxrequests)を試しましたが、エラーはまだここにあります(結論はより高い値です-エラーなしでより長い寿命です)。設定を使用すると、maxchildren = 3 maxrequests = 10エラーは、5〜10ページの更新後にランダムに表示され、15回の更新後は常に表示されます。
また、コメントすると、satchmoソースコードエラーの数行がなくなっていることがわかりました。それは正しい作業店にとって非常に重要なラインであるため、それは非常に奇妙です。問題の原因の手がかりになると思います。差分はここにあります:http://dpaste.com/hold/664978/
私がそうするならば、問題は消えます:
PAYMENT_PROCESSOR=True
私の唯一の支払いモジュールのコメントアウトライン。- コメントアウト
config_register(MultipleStringValue(SHIPPING_GROUP, ...)
_shipping/config.py
これらの行は、本番サーバーをクラッシュさせる本当の理由につながると思います。この問題を完全に解決するにはどうすればよいですか?私の調査への提案はありますか?
アップデート:
satchmoロギングを有効にした後、次のメッセージが見つかりました。
2011年12月5日月曜日13:26:37構成エラー設定の検索で問題が発生しましたSHOP.SHOW_SITE、サーバーが予期せず接続を閉じましたこれは、サーバーが要求の処理前または処理中に異常終了したことを意味します。
おそらく、https://groups.google.com/group/satchmo-users/browse_thread/thread/506b3ad77e7a766e?hl = es&pli=1のレシピを使用してこれを解決することが可能です。これは後で少し試してみます。