XF 2.3 Перенаправление cookies (Потеря хэша)

Версия XenForo
2.3.10

Sadorimatsu

Проверенные
Сообщения
969
Решения
24
Реакции
769
Баллы
1,875
Всем привет.

Столкнулся с проблемой обработки cookies, что при выборе "Расширенной" и при нажатии на кнопку "Принять все файлы cookies", то адрес кнопки изменился на /misc/cookies?update=1&accept=1, когда должно быть примерно такого вида
/misc/cookies?update=1&accept=1&t=1785656915%2Cb9720ad24b3779ffd44c4ee9b328cd92. По факту потерялся хэш. Как возможно это исправить, а точней вернуть как было?

Это произошло после того, как обновил тут:
/admin.php?force-agreement/privacy-policy
/admin.php?force-agreement/terms
В графе белых списков ничего не забивалось, да и зачем, не знаю.
Обновление необходимо было, чтобы всем действующим пользователям подтвердить согласие, если раньше этого не было, потому что закон текущий по персональным данным это обязывает. После этого основной адрес кнопки cookies изменился и открывает страницу "Перенаправление" где есть кнопка "Переадресация". Только послей нажатия этой кнопки он кидает нас на главную страницу и всё.
1785657307521.png
На офе есть тема по этой проблеме
И как показывают источники, проблему пофиксили на версии 2.2.9, но по факту получается проблема осталась.
По словам Криса, нужно включить режим дебага, зайти по admin.php?options/groups/debug/ и проставить по 0 в поле privacy-policy и terms:
photo_2026-07-28_21-14-23.jpg
Это условие я выполнил и статус обновления в тех документах обнулилось как было, но проблему не решило, cookies попрежнему грузится без хеша. Я больше склоняюсь к тому, что тут чисто баг и недоработка со стороны коробки т.к. этот режим по сей день находится в бета.

Никто не сталкивался? Будут какие мысли, как это исправить? Единственное исправление, что есть, это изменить вывод cookies на простой вариант (в рамках закона этого как минимум достаточно), тогда всё будет проходить, а вот с расширенным такая вот проблема получается в этой ситуации. Не то, что критичная проблема, но неприятно. Ладно бы это выходило текущим пользователя для обновления, но так теперь получают все гости, а это неприемлемо.

Наглядно попробуйте на демо обновить 1 из 2 документов по политике или согласия, которые есть из коробки и посмотрите, как у вас будет. Более чем уверен, что получите точно такую же проблему, а вот как решать вопрос...

Так что крайне рекомендую вообще их не трогать... но кто бы знал.
 
Последнее редактирование:
Решение
Если бы у вас не было хэша, в чистом движке вы бы получили просто ошибку, а у вас какая-то страница вместо такой:
Теперь точно могу подтвердить, что причина в и конкретно от версии 1.24+.
Установил себе 1.23.9 и проблемы нет. Начиная с 1.24.0 и выше проблема резко появляется и она как-то связано с тем, что обновлял принудительно политику с согласием. Вероятно какой-то скрипт перехватывает плагин и отсюда вся моя проблема. Тут уже надо копать в плагине, какую он имеет связь с обработкой кукис и вывода хэша. Я бы и рад его не ставить, если бы не были зависимы нужные мне плагины, но с низкой версией проблем не доставляет, пока что. Но проблема любопытная конечно, что же он перекрывать то...
После этого основной адрес кнопки cookies изменился и открывает страницу "Перенаправление" где есть кнопка "Переадресация". Только послей нажатия этой кнопки он кидает нас на главную страницу и всё.
Откуда у вас эта страница?
 
Откуда у вас эта страница?
Наглядно показываю:
Это страница идёт по этому адресу: /misc/cookies?update=1&accept=1
Если был бы хэш, то никто бы не увидел эту страницу, без него получается он перенаправляет на главную страницу.
1785700148539.png
Как можете видеть, в адресе нет. На примере инфо можно сравнить:
1785700264892.png
1785700347871.png
И такое происходит, если что-то из этого обновляем:
/admin.php?force-agreement/privacy-policy
/admin.php?force-agreement/terms
1785700457673.png1785700472302.png
У меня они обнулены после дебага, но проблему с хэшем в кукис не решило, что с этим делать, не представляю...
 
Последнее редактирование:
Вы кажется меня не поняли, о чем я говорил изначально. Я спрашивал, откуда у вас страница с кнопкой "переадресация" вообще берется. В движке такого нет. Мое подозрение в том, что у вас какой-то плагин перехватывает контроллер. Если бы у вас не было хэша, в чистом движке вы бы получили просто ошибку, а у вас какая-то страница вместо такой:
1785701914761.png
 
Matew, Да вы были правы. На моё удивление причина в нём Standard Library 1.24.2, стоило отключить хэш на кукис вернулся... будут идеи? Обновление или переустановка его не помогла, проблема осталась с ним. Странно, что же ему не нравится... Пока разбираюсь, сообщу, если что выяснится.
 
Последнее редактирование:
Если бы у вас не было хэша, в чистом движке вы бы получили просто ошибку, а у вас какая-то страница вместо такой:
Теперь точно могу подтвердить, что причина в и конкретно от версии 1.24+.
Установил себе 1.23.9 и проблемы нет. Начиная с 1.24.0 и выше проблема резко появляется и она как-то связано с тем, что обновлял принудительно политику с согласием. Вероятно какой-то скрипт перехватывает плагин и отсюда вся моя проблема. Тут уже надо копать в плагине, какую он имеет связь с обработкой кукис и вывода хэша. Я бы и рад его не ставить, если бы не были зависимы нужные мне плагины, но с низкой версией проблем не доставляет, пока что. Но проблема любопытная конечно, что же он перекрывать то умудряется. Ладно бы какие плагины в связке с ним влияют, но нет, именно он сам и влияет. Было бы неплохо изучить вопрос, может реально косяк автора плагина.

P.S. Написал автору плагина, может разберется.
 
Последнее редактирование:
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу