nginx + gunicorn + フラスコを実行しています
私のnginx設定は次のようになります:
...
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header Stage "development";
proxy_redirect off;
...
私のフラスコアプリは次のようになります:
from flask import Flask, request
from werkzeug.contrib.fixers import ProxyFix
app = Flask(__name__)
# configuration settings
if request.headers.get('Stage') == 'production':
app.config.from_object('config.production_config')
else:
app.config.from_object('config.development_config')
@app.route('/')
def index():
return "hello"
app.wsgi_app = ProxyFix(app.wsgi_app)
でも、
それはうまくいかないようです。
私は得る:RuntimeError:リクエストコンテキストの外で働いている
私のnginxは開発/運用環境を持つことができるように設定されていますが、この「サーバーの場所」は開発環境であると言え、Flaskに適切な構成を使用してもらいたいです。