1

uwsgi+django+nginx によるアプリケーションのデプロイ、毎回約 300 のリクエストがありますが、uwsgi はランダムな 500 エラーを生成します。django のログに問題がないことを確認し、uwsgi の出力ログを次のように確認します。

generated 47 bytes in 9 msecs (HTTP/1.0 500) 1 headers in 70 bytes (1 switches on core 0)

uwsgi について 500 の理由を突き止める解決策はありますか?

500 は uwsgi によって生成されるため、nginx と uwsgi の間の問題ではありません。

4

1 に答える 1

0

uWSGI ログで問題の詳細が明らかになるはずです。手始めに、ログは、エラーが発生したリクエストのリクエスト URI を明らかにする必要があります。

[pid: 29526|app: 0|req: 1/1] 127.0.0.1 () {28 vars in 297 bytes} [Mon Apr 21 00:11:46 2014] GET /example => generated 4 bytes in 0 msecs (HTTP/1.1 500) 0 headers in 0 bytes (0 switches on core 0)

この場合は への依頼でした/example。これにより、エラーの原因に関するパターンが明らかになる場合があります。これとは別に、エラーの原因が Python のどこかにある場合、キャッチされなかったトレースバックが (stderr を介して) 同じ方法で記録されます。

問題のデバッグを簡素化するために、( 経由で) 組み込みの HTTP ルーターのみを使用して uWSGI を実行し、uwsgi --http :8080 ...それに直接要求を行うことを検討してください。

于 2014-04-20T14:24:20.957 に答える