我在Heroku上运行了一个Django应用程序并安装了这段代码:https://github.com/st4lk/django-solid-i18n-urls
它在Django内置服务器上运行正常,但是当部署到Heroku时,我开始看到一些非常讨厌的问题。
我有Gunicorn与多个工作人员一起运行,如果我使用此代码,语言首选项开始随机工作(我想这取决于请求针对哪个实例)。
例如,如果我将EN作为默认(非前缀URL)和DE作为第二语言,如果我只是浏览/ urls,一切正常。现在,如果我切换到/ de /(手动输入URL或从Django语言切换器切换),主/ url开始间歇性地工作 - 如果我不断刷新页面,我得到404或DE中的页面。但是没有办法再将它切换回使用EN。所有其他URL也一样,我得到404或DE中的相应页面。即使从Django的set_language视图中也没有办法强制它回到EN。
如果我从未触及/ de / urls,那么在没有带前缀的URL的情况下,它的效果非常好。
有没有人有任何想法如何在Heroku和Gunicorn上使用它?
答案 0 :(得分:0)
原来,Gunicorn和中间件覆盖工作正常,问题出在另一块自定义中间件上。