Рейтинг:0

Сайт застрял в цикле входа в систему «заголовки уже отправлены» после обновления D9

флаг ru

Предложения по отладке сайта, который теперь застрял в цикле «заголовки уже отправлены» после успешного входа в систему (перенаправление обратно в форму входа)?

Это рабочий сервер для сайта, который только что был обновлен до Drupal 9. Обработка сеанса абсолютно нормальная на сервере разработки, поэтому я скептически отношусь к тому, что это проблема с пробелами, закрытием тега (мой один пользовательский модуль в порядке).

  • Сравнивая с default.settings.php, я не вижу ничего явно неправильного в файле settings.php.
  • Массив доверенных сайтов настроен правильно.
  • Существует действующий временный каталог (/tmp)
  • Все пакеты (Debian 10.11, Nginx, PHP 7.4, MariaDB, memcached) обновлены.
  • Перезапустил все службы. Перезапустил сервер.
  • Нет ожидающих обновлений drush.
  • Отчет о состоянии (до того, как я вышел из системы) был в порядке.
  • Пробовал отключать модули tfa/ga_login, без разницы.
  • update_status был готов на 100% до того, как я сделал обновление D8->9.
  • я бежал обновление композитора на производстве, а также искать любые различия.
  • Одна и та же версия PHP для разработки и производства.

Любые другие идеи? (Что-нибудь в конфигурации Drupal, на что я должен смотреть, так как между двумя машинами могут быть различия - разделение конфигурации и т. д.)

Спасибо ¦

RuntimeException: не удалось запустить сеанс, поскольку заголовки уже были отправлены "/var/www/sitename/vendor/symfony/http-foundation/Response.php" в строке 384. в Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage ->start() (строка 152 файла /var/www/sitename/vendor/symfony/http-foundation/Session/Storage/NativeSessionStorage.php) #0 /var/www/sitename/web/core/lib/Drupal/Core /Session/SessionManager.php(162): Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage->start()
#1 /var/www/sitename/web/core/lib/Drupal/Core/Session/SessionManager.php(193): Drupal\Core\Session\SessionManager->startNow()
#2 /var/www/sitename/vendor/symfony/http-foundation/Session/Session.php(189): Drupal\Core\Session\SessionManager->save()
#3 /var/www/sitename/web/core/lib/Drupal/Core/StackMiddleware/Session.php(60): Symfony\Component\HttpFoundation\Session\Session->save()
#4 /var/www/sitename/web/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(47): Drupal\Core\StackMiddleware\Session->handle()
#5 /var/www/sitename/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(106): Drupal\Core\StackMiddleware\KernelPreHandle->handle()
#6 /var/www/sitename/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(85): Drupal\page_cache\StackMiddleware\PageCache->pass()
#7 /var/www/sitename/web/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(47): Drupal\page_cache\StackMiddleware\PageCache->handle()
#8 /var/www/sitename/web/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(52): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle()
#9 /var/www/sitename/vendor/stack/builder/src/Stack/StackedHttpKernel.php(23): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle()
#10 /var/www/sitename/web/core/lib/Drupal/Core/DrupalKernel.php(717): Stack\StackedHttpKernel->handle()
#11 /var/www/sitename/web/index.php(19): Drupal\Core\DrupalKernel->handle()
№ 12 {основной}.
Jaypan avatar
флаг de
проверьте, чтобы перед любым символом `
флаг ru
@jaypan Я запустил установку композитора без использования --no-dev… :(
Рейтинг:1
флаг ru

Исправлено с помощью установка композитора --no-dev, как я и должен был изначально, что удалило много ненужных пакетов. Неясно, кто из них сломал бы его.

Это не то, это эта ошибка с redirect_after_login модуль, для которого есть патч.

я мысль Я исправил это после того, как избавился от пакетов dev, но я запутался, потому что использовал одноразовую ссылку (сгенерированную пользователь drush), который работал, и я мог свободно перемещаться и оставаться в системе.

В этом случае файлы cookie были в порядке, поскольку redirect_after_login, по-видимому, не вызывается для одноразовых ссылок. Я просмотрел список модулей, увидел его, понял, что не пытался его удалить, сделал это, а затем проверил очередь задач…

Также стоит упомянуть: если вы удалите модуль TFA, а затем вам потребуется переустановить его, вам нужно будет получить соответствующие строки из резервной копии user_data (module=tfa) для переустановки сидов людей, сохраненных одноразовых кодов и т.д.

Ответить или комментировать

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