1

私はgunicornを使用してdjangoプロジェクトを実行しています.sslを使用して実行したいのですが、インターネットでこの辞書が必要であることを発見しました "{'X-FORWARDED-PROTOCOL': 'ssl', 'X-FORWARDED-SSL' : 'の上'}"。しかし、どこに置くのですか?コマンド gunicorn_django で ssl を使用して実行する方法はありますか? 私はnginxを使用しておらず、使用したくありません。ありがとう。

4

1 に答える 1

5

更新: Gunicorn は0.17.0 / 2012-12-25の時点で SSL サポートを追加しました。

元の答え:

Gunicorn 自体は SSL をサポートしていません。それを追加するオープン プル リクエストがあります https://github.com/benoitc/gunicorn/pull/265X-FORWARDED-PROTOCOLおよびヘッダーは、X-FORWARDED-SSLSSL ターミネーションを行う Gunicorn の前にあるプロキシ (Nginx など) によって使用されます。

SSL を使用するために Nginx を使用する必要はありません。Apache/mod_proxy または HAProxy または SSL をサポートするその他のプロキシ サーバーを使用できます。SSL を必要としない場合でも、Gunicorn を使用して遅いクライアントをバッファリングする場合は、プロキシ サーバーの使用をお勧めしますhttp://gunicorn.org/deploy.html

利用可能な HTTP プロキシは多数ありますが、Nginx を使用することを強くお勧めします。別のプロキシ サーバーを選択する場合は、デフォルトの Gunicorn ワーカーを使用するときに、低速のクライアントをバッファするようにする必要があります。このバッファリングがないと、Gunicorn はサービス拒否攻撃を受けやすくなります。スローロリスを使用して、プロキシが適切に動作しているかどうかを確認できます。

于 2012-07-19T20:41:50.953 に答える