xenForo 2.2.15 Release Edition By XenForo.Info

xenForo 2.2.15 Release Edition By XenForo.Info 2.2.15

Нет прав для скачивания
Статус
В этой теме нельзя размещать новые ответы.
И с ним делать?

Кстати пробовал в конфиг движка ставить
$config['enableLoginCsrf'] = false;
Ничего не меняется.


Не все поисковые боты поддерживают ("правильно") cookies & javascript!!!

А в данной функции -
XF/Mvc/Controller

PHP:
public function validateCsrfToken($token = null, &$error = null, $validityPeriod = null)
    {
        if ($token === null)
        {
            $token = $this->filter('_xfToken', 'str');
            if (!$token)
            {
                $token = $this->request->getServer('HTTP_X_XF_CSRF_TOKEN', '');
            }
        }

        $token = strval($token);
        if (!$token)
        {
            $error = 'missing';
            return false;
        }

        $parts = explode(',', $token);
        if (count($parts) == 2)
        {
            list($tokenTime, $tokenValue) = $parts;

            $cookie = $this->request->getCookie('csrf');
            if (!$cookie)
            {
                $error = 'no_cookie';
                return false;
            }

            /** @var \Closure $csrfValidator */
            $csrfValidator = $this->app['csrf.validator'];

            if ($csrfValidator($cookie, $tokenTime) === $tokenValue)
            {
                if ($validityPeriod === null)
                {
                    $validityPeriod = 86400;
                }

                if ($validityPeriod > 0 && ($tokenTime + $validityPeriod) < \XF::$time)
                {
                    $error = 'expired';
                    return false;
                }

                return true;
            }
            else
            {
                $error = 'invalid';
                return false;
            }
        }
        else
        {
            $error = 'invalid';
            return false;
        }
    }

Думаю - с токеном не лады! (
, сверяется токен (хеш) с токеном в cookies!!!

Обновился, были мелкие косяки, устранил.
Визуально, всё работает. Но, полез в журналы сервера и увидел, что периодически идет ошибка 400 от login/keep-alive
Причем самым непредсказуемым образом. Нет какой либо зависимости или закономерности.
Ранее такого не наблюдал. Сайт подключен через CloudFlare, может там чего нужно подкрутить? Кто-то может что-то подсказать?
Вот такая картина выборки keep-alive из последних записей:

Посмотреть вложение 151525

Предполагаю - это поисковые боты получают - 400! 😊

Как вариант проверить ("отловить", запретить) - \XF::App()->request->getRobotName()

Зачем (от чего) защищать поисковых ботов от CSRF?! 🤔
 
Последнее редактирование модератором:
поисковым ботам там в принципе нечего делать

А что-то делают...

I can't figure out how Google could have found this URL though...


🤔?
 
Последнее редактирование:
Предполагаю - это поисковые боты получают - 400!
Была такая идея в начале, но:
Сервер при ошибке фиксирует URL, Код ошибки, IP-адрес, User-Agent, Referer, и время.
User-Agent - все разные. Ботов вообще нет.
IP-адреса посетителей через CF у всех одинаковые. Их не могу посмотреть.

Что удалось выяснить, это что ошибка идет security_error_occurred и только от некоторых гостей при этом они получают сообщение "Security error occurred. Please press back, refresh the page, and try again.".

В этом месте XF/Mvc/Controller:


Код:
public function assertValidCsrfToken($token = null, $validityPeriod = null)
    {
        if (!$this->validateCsrfToken($token, $error, $validityPeriod))
        {
            if ($error == 'no_cookie')
            {
                $error = \XF::phrase('cookies_required_to_use_this_site');
            }
            else
            {
                $error = \XF::phrase('security_error_occurred');
            }
            throw $this->exception($this->error($error, 400));
        }
    }
 
Последнее редактирование модератором:
Что удалось выяснить, это что ошибка идет security_error_occurred и только от некоторых гостей при этом они получают сообщение "Security error occurred. Please press back, refresh the page, and try again.".
если мне не изменяет память, ошибка с таким текстом имеет свойство выплевываться когда у клиента меняется айпишник

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

В чем проблема не знаю, но похоже что у некоторых гостей либо номер токена не соответствует, либо срок его валидации истек. Кэширование, да и сам CloudFlare отключал. Нет изменений.
 
Обновился нормально. Но с одним "устаревшим шаблоном" какая-то фигня получается. Что Делать?

3333.jpg

1111.jpg

22222.jpg

Главное - всё работает отлично. Как бы просто убрать это предупреждение?
 
Последнее редактирование:
Но с одним "устаревшим шаблоном" какая-то фигня получается. Что Делать?
Попробовать авто-обьединение.
Если оно не сработает, нажать обьединить , смотреть что изменилось в шаблоне, делать выводы. Только если нет понятия, не жамкать "Сохранить".
 
Нажимал уже всё что можно

Оппа! Нажал на шаблоне "Сохранить" и предупреждение пропало. Всем спасибо! )))
 
Тогда потестируй движок, если всё работает, сохрани.
А лучше нажми на ссылку "message_macros" и посмотри что изменилось.

Нажал на шаблоне "Сохранить" и предупреждение пропало.
Естественно.
Пока писал уже вылетело сообщение.
Теперь только вручную проверять что там изменилось, а так движок подсветил-бы.
 
Последнее редактирование модератором:
Обновился нормально. Но с одним "устаревшим шаблоном" какая-то фигня получается. Что Делать?
потому что нефиг вносить правки в шаблоны напрямую, годами тут пишем
 
West14, Я через модификацию вносил!

44444.jpg
 
Последнее редактирование:
Mikhalych, мне доказывать не нужно) если есть предупреждение, значит правки имели место быть.
 
Странно что сегодня каждый пятый гость меняет IP )
До обновления не было такого.
Кроме того, я меняю IP и у меня нет ошибки.

В чем проблема не знаю, но похоже что у некоторых гостей либо номер токена не соответствует, либо срок его валидации истек. Кэширование, да и сам CloudFlare отключал. Нет изменений.
Эта ошибка вылезла не в этой версии, вы просто её не замечали. Если вы хотите продолжить её обсуждать, то, пожалуйста, делайте это в отдельной теме
 
Эта ошибка вылезла не в этой версии, вы просто её не замечали.
Возможно. Я и писал что обновлял не с предыдущей версии.
Главное что мне нужно было узнать, это только у меня, либо у всех.
Завязываю здесь со своей проблемой.
Уже ясно что только у меня после обновления с 2.2.12 до 2.2.15.
 
Статус
В этой теме нельзя размещать новые ответы.
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу