Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django admin突然仅在生产环境中注销(拒绝执行脚本,因为其MIME类型('text/html')不可执行)_Python_Django_Django Admin_Mime Types_Mime - Fatal编程技术网

Python Django admin突然仅在生产环境中注销(拒绝执行脚本,因为其MIME类型('text/html')不可执行)

Python Django admin突然仅在生产环境中注销(拒绝执行脚本,因为其MIME类型('text/html')不可执行),python,django,django-admin,mime-types,mime,Python,Django,Django Admin,Mime Types,Mime,每当我在django管理员上执行诸如保存、更新或过滤之类的操作时,都有可能重定向到登录页面,并且需要再次登录。这种行为经常发生,但奇怪的是:它只发生在生产环境中。我正在使用AWS fargate在ECS集群上运行应用程序。当我检查浏览器存储时,有3个cookie:csrftoken、sessionid和djdt。所有这些产品的有效期至少为一周 My settings.py具有以下会话配置: SESSION_CACHE_ALIAS = 'sessions' # The module to stor

每当我在django管理员上执行诸如保存、更新或过滤之类的操作时,都有可能重定向到登录页面,并且需要再次登录。这种行为经常发生,但奇怪的是:它只发生在生产环境中。我正在使用AWS fargate在ECS集群上运行应用程序。当我检查浏览器存储时,有3个cookie:csrftoken、sessionid和djdt。所有这些产品的有效期至少为一周

My settings.py具有以下会话配置:

SESSION_CACHE_ALIAS = 'sessions'
# The module to store session data
SESSION_ENGINE = 'django.contrib.sessions.backends.cache'
# A string like "example.com", or None for standard domain cookie.
SESSION_COOKIE_DOMAIN = env.str('SESSION_COOKIE_DOMAIN', default=None)
# Whether the session cookie should be secure (https:// only).
SESSION_COOKIE_SECURE = not DEBUG
# why it doesn't resolve the sundenly logout problem!?
SESSION_COOKIE_AGE= 24*60*60*7
我尝试了以下问题,但它们对我不起作用:

任何帮助都将不胜感激

编辑 我发现了一些重要的线索:

在获取重定向之前,浏览器控制台上会出现以下错误:

Refused to execute script from '<my_url>/jsl18n' because its MIME type ('text/html') is not executable, and strict MIME type checking is enabled
显示错误消息后,任何单击或与管理员的交互都会导致重定向到登录页面。
我在admin上使用一些非常简单的JS文件来隐藏/显示一些基于用户交互的字段。我认为这个消息与这些静态js文件有些关系。我发现这个错误消息有一些问题,看起来不是django特有的。但是这些问题对我一点帮助都没有。

我终于明白了。我已更改设置。py:

致:


我不知道它为什么会工作,但在集群环境中,本地内存缓存策略可能不是一个好的选择。如果有人有更好的猜测,请告诉我。

我终于猜出来了。我已更改设置。py:

致:

我不知道它为什么会工作,但在集群环境中,本地内存缓存策略可能不是一个好的选择。如果有人有更好的猜测,请告诉我

SESSION_ENGINE = 'django.contrib.sessions.backends.cache'

CACHES = {
    'default': env.cache(
        'CACHES_DEFAULT_URL', default='locmemcache://cache-default'),
    'sessions': env.cache(
        'CACHES_SESSIONS_URL', default='locmemcache://cache-sessions'),
    'memory': env.cache(
        'CACHES_MEMORY_URL', default='locmemcache://cache-memory'),
}
SESSION_ENGINE = 'django.contrib.sessions.backends.db'