加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > Nginx > 正文

python – Django Admin FORCE_SCRIPT_NAME登录重定向错误

发布时间:2020-12-13 21:04:30 所属栏目:Nginx 来源:网络整理
导读:我让Django用fastcgi_pass在Nginx后面跑.我在像“/ django / sample”这样的子路径上运行Django. location /django/sample { include fastcgi_params; fastcgi_pass 127.0.0.1:8025;} 我在django设置模块中使用FORCE_SCRIPT_NAME,它似乎解决了我在子路径上运

我让Django用fastcgi_pass在Nginx后面跑.我在像“/ django / sample”这样的子路径上运行Django.

location /django/sample {
    include fastcgi_params;
    fastcgi_pass 127.0.0.1:8025;
}

我在django设置模块中使用FORCE_SCRIPT_NAME,它似乎解决了我在子路径上运行时遇到的所有问题.

在settings.py中:

FORCE_SCRIPT_NAME = "/django/sample/"

我去这里用admin登录(并正确获取管理员用户界面):

http://server/django/sample/admin

但是当我提交时,它会重定向到:

http://server/django/sample/django/sample/admin

真正奇怪的是,如果我更改FORCE_SCRIPT_NAME =“”登录有效.

但是,管理页面中的所有链接都是/ admin,而不是/ django / sample / admin /

我错过了什么?设置FORCE_SCRIPT_NAME =“/ django / sample /”似乎修复了除管理员登录之外的所有内容.

有任何想法吗?

更新:

我也尝试在nginx conf中使用fastcgi_split_path_info(并在设置中取出FORCE_SCRIPT_NAME).再次修复除管理员登录重定向之外的所有路径问题.

像这样:

location /django/sample {
    fastcgi_split_path_info ^(/django/sample)(.*)$;
    include fastcgi_params;
    fastcgi_pass 127.0.0.1:8025;
}
最佳答案
仅供参考,我放弃了.所有文档都说这应该很容易.但要处理这太痛苦了.我反而要求我们的Django应用程序使用子域并在服务器上设置vhost.这样Django可以在文档根“/”运行

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读