mod_wsgi+flaskハマりどころメモ

flaskでちゃちゃっと書いたアプリをmod_wsgi環境で公開した時にハマった事メモ

構成

  • apache+mod_wsgi+mod_proxy
  • TCP 8080のvhostでmod_wsgi環境
  • TCP 80のvhostで静的ファイル配信とリバースプロキシ設定

mod_wsgi側で対応した事

  • Authorizationヘッダーが取れない
WSGIPassAuthorizationをOnにする
  • デバッグメッセージprint文で出してるのが表示できない
printでデバッグとかやってないでちゃんとやれ!でも、ちゃんとやるのがめんどくさかったらWSGIRestictStdoutをoffにする

wsgiファイルで対応した事

  • flaskアプリ内からパスが通ってるはずのモジュールがインポートできない
sys.path.insert(0, 'path to flask application'
# →sys.path.appendだとうまく動かなかった

flask側で対応した事

app = Flask(__name__)
app.debug = True