Появляется точка после домена из-за которой слетают сессии

Проблемы с установкой или работой phpBB 3.0.x? Получите помощь здесь!
С 1 января 2017 года phpBB Group прекращает поддержку phpBB версии 3.0.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.0 до 1 июля 2017 года.
Подробнее: Окончание поддержки phpBB 3.0.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
xbox
phpBB 1.0.0
Сообщения: 1
Стаж: 13 лет 10 месяцев

Появляется точка после домена из-за которой слетают сессии

Сообщение xbox »

Здравствуйте.

Проблема такая.

Настроил форум. Работает нормально. Время от времени вносил некоторые правки.
Сессии настроены правильно и пользователи, которые залогинились в большинстве случаев работают корректно.

Но есть одна ссылка после нажатия которой пользователь как-будто разлогинивается.
Ссылка эта стандартная находится на главной странице. Называется "Отметить форумы как прочтённые". Адрес ее имеет вид
http://example.com/index.php?hash=XXXXXXXX&mark=forums
Суть "разлогинивания" в том, что после нажатия этой ссылки после домена появляется точка.
Т.е. пользователь изначально был на странице
http://example.com
после нажатия ссылки для пометки всех форумов прочитанными пользователю на 3сек показывается стандартное информационное сообщение, а потом редиерк и пользователь оказывается на странице
http://example.com. (обратите внимание на точку).
(В промежуточном информационном сообщении точки нет. Она появилась только после редиректа.)
И далее при перемещении по форуму все страницы получаются с точкой после домена.
Например:
http://example.com./viewforum.php?f=2
http://example.com./viewtopic.php?t=6&p=407#p407
И даже ссылка на логотипе (на главную страницу) содержит точку в конце.

Куки изначально выданную пользователь не теряет, но, вероятно, что из-за того что "как будто поменялся домен" начатая сессия уже не действует и пользователь видит страницу как незалогиненный гость. Если в адресной строке вручную убрать точку, то пользователь опять оказывается залогиненным, как был залогиненным до нажатия ссылки.
Если пользователь введет повтороно логин и пароль в "домене с появившейся точкой" то он уже будет работать залогиненным всегда, пока не выйдет (т.е. у него уже будет две ссессии - одна для правильного демена, а вторая для домена с точкой.

Самое интересное, что похожие по смыслу ссылки в форумах работают корректно и не приводят к появлению точки.
Например. работают корректно:
Ометить все темы как прочитанные
http://example.com/viewforum.php?hash=XXXXXXXX&f=2&mark=topics
Ометить все подфорумы как прочитанные
http://example.com/viewforum.php?hash=XXXXXXXX&f=1&mark=forums

В результате описанного получается, что пользователи логинятся, помечают все форумы как прочитанные, потом хотят оставить сообщение, не замечают, что они пишут, как гости, но вводят код защиты от спама и оставляют сообщение от имени ГОСТЬ.
В худшем случае пользователи перед публикацией стандартное имя Гость меняют на свое имя (например - Ирина) и получают отказ в публикации сообщения по причине, что пользователь с таким именем существует. Кто попродвинутей, тот все равно находит способ отправить сообщение. А некоторые "домохозяйки" не связываются, а отказываются от публикации. (это на основе анализирования данных Яндекс.Метрики).

Вернуться в «Поддержка phpBB 3.0.х»