简体   繁体   English

Django +基本的HTTP身份验证

[英]Django + basic http auth

I am using Django via FastCGI. 我正在通过FastCGI使用Django。 I have a non-django part of my website and I need to protect it with basic apache auth. 我的网站包含非Django部分,我需要使用基本的apache身份验证来保护它。 Here is a part of my config: 这是我的配置的一部分:

RewriteEngine On
RewriteBase /

RewriteRule ^media(.*)$ - [L]
RewriteRule ^SUPERSECRET(.*)$ - [L]
RewriteRule ^images(.*)$ - [L]
RewriteRule ^robots.txt$ - [L]
RewriteRule ^(admin_media/.*)$ - [L]

RewriteRule ^(dispatch\.fcgi/.*)$ - [L]

RewriteRule ^(.*)$ dispatch.fcgi/$1 [L]

So SUPERSECRET dir should not be processed by django dispatcher. 因此,Django调度程序不应处理SUPERSECRET目录。 If there is no auth, anything is ok, but when I add .htaccess to SUPERSECRET dir: 如果没有身份验证,一切正常,但是当我向SUPERSECRET目录添加.htaccess时:

AuthUserFile /home/user/site/SUPERSECRET/.htpasswd
AuthName "Members Area"
require valid-user

I get 401 failed auth error without any request to enter login & password, how should I fix my config files? 我收到401错误的身份验证错误,没有任何输入登录名和密码的请求,我该如何修复我的配置文件? Thanks! 谢谢!

不知道这是否可以解决问题,但是.htpasswd不应位于可从Web访问的任何目录中。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM