当我尝试登录管理页面时,Clould9的Django开箱即可出现CSRF错误。 给出的理由是: - 禁止(403) - CSRF验证失败。请求中止。 - 引用者检查失败 - https://mysite.c9.io/admin/login/?next=/admin/ 不匹配https://mysite.c9.io:443/
除了创建超级用户之外,没有对该实例进行任何更改。
注释掉setting.py MIDDLEWARE_CLASSES'django.middleware.csrf.CsrfViewMiddleware'没有解决问题。
目前的解决方法是通过setattr(request,'_ _ dont_enforce_csrf_checks',True),在此处找到: Django CSRF framework cannot be disabled and is breaking my site
问题似乎是Cloud9在端口443上处理HTTPS的方式。有没有办法在不禁用整个站点的CSRF的情况下解决这个问题?我似乎也是用django-admin沙箱了.py,所以我不能将黑客限制在管理页面。
答案 0 :(得分:1)
我已经通过cloud9支持@eff M为这个问题开了一张票。他们都是伟大的人,并且很棒的IDE也得到了很大的支持。
同时暂时尝试这种解决方法:
使用http://mysite.c9.io/admin/login/?next=/admin/而不是https://mysite.c9.io/admin/login/?next=/admin/访问您的管理页面,看看您是否可以登录。它在我身边很有效。