nginx + uwsgi は django のデプロイに失敗しました (400 または 502)。
伊谢尔伦
伊谢尔伦 2017-05-16 17:28:00
0
1
745
###環境:### OS X 10.8.5

ジャンゴ 1.6
Python 2.7.2
最初に私の構成を投稿します
リーリー リーリー
設定は基本的に次の 2 つのチュートリアルに基づいています

https://uwsgi-docs.readthedocs.org/en/latest/tutorials/Django_and_nginx.html

https://docs.djangoproject.com/ en/1.6/howto/deployment/wsgi/uwsgi/

nginx と uwsgi の両方でソケットを使用すると、502 エラーが報告されます。

uwsgi では次のことが常に当てはまり、リクエストは表示されません。

リーリー
両方が 127.0.0.1:3031 を使用する場合、400 エラーが報告されます。

しかし、uwsgi を見ると、リクエストが来ていることがわかります。

リーリー
2 日間イライラしていますが、解決方法がわかりません...

あと聞きたいのですが、nginx の include uwsgi_params; の機能は何ですか?
これがないと、uwsgi は次のエラーを報告することがわかりました:

リーリー

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全員に返信(1)
我想大声告诉你

nginx と uwsgi の両方でソケットを使用すると、502 エラーが報告されます

nginx は 502 を報告します。これは、アップストリームの設定が間違っているか、アップストリームによって指定されたサーバーがエラーを報告することを意味します。 unix:///Users/scarlex/Projects/venv/mysite/white.sock写法错误,多了两个斜杠,正确的是unix:/Users/scarlex/Projects/venv/mysite/white.sock。从题主贴出的uwsgi配置来看,chmod-socket = 664可能不当,尝试设为chmod-socket = 666。nginx一般是以http用户启动的,664white.sock に書き込む権限がない可能性があります。

127.0.0.1:3031 を使用すると、400 エラーが報告されます。

これは nginx とは何の関係もありません。純粋に uwsgi または django の設定エラーです (スクリプト自体のソース コードにエラーがある場合は、5xx が報告されるはずです)。可能であれば、django の settings.py を投稿してください。

考えられる推測を入力してください:

最後に、DEBUG が False の場合は、ALLOWED_HOSTS 設定も適切に設定する必要があります。そうしないと、すべてのリクエストが「Bad Request (400)」として返されます。

https://docs.djangoproject.com/en/1.6/ref/settings/#std%3asetting-ALLOWED_HOSTS

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!