Shshzik
@Shshzik
Начинающий

Возможно ли иметь одинаковые сессии на двух сайтах?

В файле hosts установлено:
127.0.0.1 one.ru
127.0.0.1 two.ru

Запускаю проект:
python manage.py runserver 80

Оба сайта успешно подхватываются и работают.
Создал MIDDLEWARE:
from django.urls import set_urlconf

class SimpleMiddleware(object):
    def __init__(self, get_response):
        self.get_response = get_response
        # One-time configuration and initialization.

    def __call__(self, request):
        # Code to be executed for each request before
        # the view (and later middleware) are called.
        host = request.get_host()
        if host == 'one.ru':
            set_urlconf('one.urls')
            request.urlconf = 'one.urls'
        elif host == 'two.ru':
            set_urlconf('two.urls')
            request.urlconf = 'two.urls'
        response = self.get_response(request)

        # Code to be executed for each request/response after
        # the view is called.
        host = request.get_host()

        return response


Каждый из сайтов отдаёт свои данные.
Появилась следующая проблема - не сохраняются Сессии.
Во View я пишут
request.session.q = 5
На сайте это сразу же отображается в шаблоне, но стоит убрать эту строку, как она пропадает и из шаблона.
Вопросы:
1) Почему так происходит?
2) Можно ли сделать одинаковые сессии на двух сайтах таким образом?
  • Вопрос задан
  • 197 просмотров
Решения вопроса 1
@remzalp
Программер чего попало на чем попало
Оба сайта должны хранить сессии совместно и передавать Вас друг другу (дополнительная кука, промежуточный сервис). Аналогично реализовано здесь - прозрачная авторизация через TM

Если будут просто хранить файлы сессий в общем хранилище - при заходе на сайты - сгенерятся 2 разные сессии
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы