HTTP - это протокол ответа на запрос.
Это означает, что сервер не может связаться с клиентом без инициации диалога клиентом.Таким образом, единственный способ сделать что-то подобное это родной Django, это периодически проверять клиент, чтобы убедиться, что сессия все еще в порядке.
Один из способов добиться этого - использовать фоновый ajax-вызов (возможно, используя setIntervalв javascript), который проверяет сеанс и, если он больше не годится (либо по истечении срока, либо пользователь был отключен и т. д.), то перенаправляет их обратно на страницу входа.
Другие подходы могут включать отправку времени истеченияклиенту, так что он проверяет сеанс только тогда, когда он истек (хотя это не подхватывает отключение пользователей) или наличие сервера веб-сокетов, который передает эту информацию клиенту.