繁体   English   中英

Django使用Ngnix + Gunicorn进行基本身份验证失败

[英]Django Fails with Basic Auth with Ngnix + Gunicorn

我正在尝试使用nginx平衡2个gunicorn服务器。 我需要在应用程序上具有基本身份验证,因此我认为我会将身份验证粘贴在nginx服务器上。

但是由于某种原因,当我启用nginx服务器的基本身份验证时,Django完全失败。 在我的nginx conf中禁用basic后,一切工作正常。

这是我的nginx conf。

upstream backend {
    server 10.0.4.3;
    server 10.0.4.4;
}




server {
    listen 80;


    location / {
         proxy_pass http://backend;
     proxy_set_header X-Forwarded-Host $server_name;
            proxy_set_header X-Real-IP $remote_addr;
            add_header P3P 'CP="ALL DSP COR PSAa PSDa OUR NOR ONL UNI COM NAV"';
             auth_basic "Restricted";
           auth_basic_user_file /etc/nginx/.htpasswd;
            proxy_set_header REMOTE_USER $remote_user;

    }

    location /orders
    {
     auth_basic "off" ;
    }
}

这是我得到的错误:

Error importing module keystone_auth.backend: "No module named keystone_auth.backend"

我认为可能是我需要传递的一些标头。 考虑到需要平衡负载,还有另一种方法可以在Django上获得基本身份验证。 还是我的ngnix配置丢失了一些东西?

错误地将keystone_auth.backend包含在另一个设置文件中,我仍然无法使BasicAuth正常工作,但是最终通过编写我自己的Auth Back端来解决此问题,如下所述。

https://docs.djangoproject.com/en/dev/topics/auth/customizing/

暂无
暂无

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

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