Django /子目录/ admin /重定向到/ admin / login /?next = / admin /

时间:2017-11-15 04:00:53

标签: python django nginx

我在端口8011上设置了一个Django服务器,并在端口80上有一个nginx作为子目录服务。

静态文件,很好。

页面,很好。

但是当我访问/子目录/ admin /时,它需要我:/ admin / login /?next = / admin /

这当然是404错误,但如果我访问/子目录/ admin / login /?next = / admin /,它可以正常工作。

有什么想法吗?我需要在settings.py中设置变量吗?

urls.py

    url(r'^admin/', admin.site.urls),

nginx config:

server {
    listen 80;

    location /sdc {
        proxy_pass http://127.0.0.1:8011/;
    }
}

1 个答案:

答案 0 :(得分:-2)

我相信正在发生的事情是,当django看到你还没有登录时,它会将你重定向到名为' admin:login'的网址。它通过颠倒你在urls.py中看到的内容来确定该网址,这种情况就是admin/login/https://docs.djangoproject.com/en/1.11/ref/contrib/admin/#reversing-admin-urls)。这意味着它不知道它在/subdirectory/内运行。

尝试在urls.py中添加子目录

url(r'^subdirectory/admin/', admin.site.urls),