Перейти к основному содержанию

Drupal 8 — CAPTCHA validation error: unknown CAPTCHA session ID

Drupal 8

Очень неприятная ошибка есть в модуле RECAPTCHA для drupal 8. Иногда страница логина кешируется с неверным значением сессии CAPTCHA, при этом вместо логина получаем в бубен:

CAPTCHA validation error: unknown CAPTCHA session ID

Если есть доступ к сайту, то можно временно отключить модуль RECAPTCHA и залогиниться. Но если проблема массовая, то исправляем баг руками.

Редактируем файл recaptcha.module:

drupal

Находим строку:

          // As the validate callback does not depend on sid or solution, this
          // captcha type can be displayed on cached pages.
          $captcha['cacheable'] = TRUE;

Меняем на:

          // As the validate callback does not depend on sid or solution, this
          // captcha type can be displayed on cached pages.
          $captcha['cacheable'] = FALSE;
          \Drupal::service('page_cache_kill_switch')->trigger();

drupal

Готово, теперь форма логина не будет кешироваться. Ибо нефиг.

P.S.

После обновления модуля RECAPTCHA операцию придётся повторить, если, конечно, ошибку не исправят.

Теги

 

Похожие материалы

Drupal 8-9 — добавляем блок "Поделиться" в статьи

Добавим блок "Поделиться" в статьи и страницы нашего сайта. Для начала вам нужно сгенерировать HTML код блока. Вы можете воспользоваться многочисленными сервисами в Интернете. Я использую блок от Яндекса.

Теги

Перезагружаем IIS при 500-й ошибке

Недавно мой сайт на Drupal 8 стал иногда валиться с 500-й ошибкой. Началось это с очередного обновления. Проблема, как мне кажется, связана с некорректной работой системы кеширования. Помогает перезагрузка IIS.