Сессия постоянных клиентов Magento - PullRequest
0 голосов
/ 14 октября 2011

Предпосылка проста.

Новый клиент прибывает на наш сайт, перенаправляется на страницу регистрации / входа (так как он является новым посетителем, и нет файла cookie) и после регистрации или входа (если у вас уже есть учетная запись, но вы заходите с другого компьютера / в браузере) они переносятся на домашнюю страницу.

Каждый раз, когда они впоследствии посещают, они не должны видеть страницу регистрации / входа (если они явно не выходят из системы, куки отключены / заблокированы, или они посещают с другого браузера / устройства).

Я бы подумал, что теоретически установка значения cookie на абсурдно большое число (в нашем случае 30+ лет) и проверка наличия этого cookie перед перенаправлением на страницу регистрации / входа в систему сработает.

В нашем случае это не так. Я чувствую, что сеанс все еще длится примерно час или около того, прежде чем посещение домашней страницы сайта перенаправляет пользователя на регистрацию / вход в систему.

Так чего мне здесь не хватает? Любой совет?

--- редактировать --- Наш веб-хостинг заверил меня, что session.gc_maxlifetime не является проблемой. Я установил на нашем сервере разработки значение 86400 и, оставив браузер без работы на ночь, вернулся на следующий день и думаю, что он работает как положено.

Одна проблема, с которой я столкнулся, заключается в том, что он также устанавливает тайм-аут администратора magento на то же значение, что может представлять угрозу безопасности, если сотруднику предоставляется доступ администратора Magento, а затем он уволен / уволен / и т.д. Я, конечно, не хочу, чтобы их сеанс продолжался до тех пор, пока мы хотим, чтобы сеансы клиентов продолжались (месяцы).

Я надеюсь, что настройка CONFIG >> ADVANCED >> ADMIN >> SECURITY >> SESSION LIFETIME не будет переопределена этим.

1 Ответ

1 голос
/ 17 октября 2011

Ваша проблема, скорее всего, связана со значением сеанса Php, которое вам нужно увеличить, чтобы оно соответствовало значению длительности файла cookie;на вашем php.ini поместите следующее:

session.gc_maxlifetime = 86400

Вам нужно заменить значение '86400' тем, какое эквивалентное время вы хотите, чтобы сеанс / файл cookie длился. Я бы посоветовал вам установить сеансы и файл cookie.значение '604800' составляет около недели.

То, что должно произойти на вашем сервере, - это то, что magento собирается файл сеанса за сеанс в папке var / session.Это может потенциально привести к тому, что на вашем сервере закончатся inode, в зависимости от конфигурации вашего сервера.

Cheers!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...