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

Python Django使用Ngnix+Gunicorn进行基本身份验证失败,python,django,nginx,gunicorn,Python,Django,Nginx,Gunicorn,我正在尝试使用nginx平衡2台gunicorn服务器的负载。我需要在应用程序上有基本的身份验证,所以我想我应该将身份验证粘贴到nginx服务器上 然而,由于某些原因,当我在nginx服务器上启用基本身份验证时,我的Django完全失败。在我的nginx conf中禁用basic后,一切都能正常工作 upstream backend { server 10.0.4.3; server 10.0.4.4; } server { listen 80; lo

我正在尝试使用nginx平衡2台gunicorn服务器的负载。我需要在应用程序上有基本的身份验证,所以我想我应该将身份验证粘贴到nginx服务器上

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

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" ;
    }
}
这是我的nginx配置

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上有没有另一种获得基本auth的方法,记住它需要负载平衡。或者我的ngnix配置缺少一些东西?

keystone_auth.backend错误地包含在另一个设置文件中,我仍然无法让BasicAuth工作,但最终通过编写我自己的auth后端解决了问题,如本文所述


包括强制性的基本授权超过80是不赞成生产至少。你在django那边做得怎么样?在我看来,似乎只需要使用远程用户中间件,所以我不确定keystore\u auth.backend在哪里发挥作用