mod_wsgiでHTTP_AUTHORIZATIONを受け取る。
Django でDigest認証用のバックエンドを書いていたんだけれども、 Apache と mod_wsgi で動かすとなぜか認証を通過出来ない。
で、色々と泥臭いデバッグを繰り返したところ、 そもそも HTTP_AUTHORIZATION ヘッダが渡されていない様子。
request.META.get('HTTP_AUTHORIZATION') # <-- コレがNoneになる。
ちょこっとググってみる前に、 mod_wsgi のドキュメントを眺めてみると、 ちゃんと Configuration Guidelines や Configuration Directives に書いてありました。
WSGIPassAuthorization On
これを VertualHost ディレクティブに追加したら、 バッチリ HTTP_AUTHORIZATION を受け取れた! 認証も通りましたですよ!
セキュリティ面から、 WSGIPassAuthorization ディレクティブはデフォルトではOffらしい。 なるほどなるほど。
- Posted at:
- 2007/12/27 01:43:07
- 2 Comments
- 0 TrackBacks
- Trackback:
- http://humming.via-kitchen.com/2007/12/27/passed-httpauthorization-on-modwsgi/trackback/
TrackBacks
まだ登録されていません。
Comments
ENDLESS
おぉ~流石☆
しっかり解決してから寝たんですねっ!
nobu
こういう問題は解決しないと眠れません。