2017-06-03 11 views
0

私は画像のような静的要素を持つサイトを持っています。私はそれらを守りたい(ホットリンクを使って直接アクセスすることができないように)。私は、Djangoのドキュメントから一部「のmod_wsgiと認証」を使用し、この目的のために: Authentication with mod_wsgiApacheログアウトをdjangoログアウトと同期する

私は、ユーザーがあるときに二回(1時間Djangoの認証と、その後Apacheの認証にログインしているという事実のようにしないでくださいページ上の画像)しかし、それは主要な問題ではありません(もしこれを扱う方法が分かっていればそれもいいかもしれません)

私の主な問題は、ログアウトしても保護された画像にアクセスできることです。これは、ApacheがDjangos check_passwordメソッドだけを使用していて、それを同期させる方法があるからです。

答えて

1

あなたがApacheの「X-SENDFILE」ヘッダを見てみる必要があります。https://tn123.org/mod_xsendfile/

彼のアクセスは静的なファイルを許可されたが、その後はApacheによって提供された場合には、ユーザーがアクセスできるかどうDjangoはチェックすることができます。

このソリューションを使用すると、ユーザーは2回ログを取る必要はなく、任意の種類のコントロールを使用できます。

私はそれについてのnginxとhereをブログの記事を書いたが、それは同じように動作します:)

+0

どうもありがとうございました!有望に見える、私はそれを試してみる:)!ですから、nginxヘッダー 'X-Accel-Redirect'をApacheの' X-SENDFILE'ヘッダーに変更するだけで済みます。 – losik123

+0

まさに 'X-Sendfile'はapacheモジュールで使われているヘッダーであり、nginxと同じように動作します:) – Thom

関連する問題