У меня есть Laravel 7 APP с двумя экземплярами за NGINX балансировщиком нагрузки с SSL, оканчивающимся на балансировщике нагрузки. Я установил доверенные прокси, как описано в документации Laravel, которая работает должным образом и Весь трафик c использует HTTPS. У меня есть оба экземпляра Laravel, использующие один и тот же сервер Redis для сеанса и отдельный сервер Redis для кэширования, и оба экземпляра используют один и тот же домен сеанса в .env
Оба сервера Laravel работают правильно, если они единственный экземпляр в балансировщике нагрузки. Однако, когда оба экземпляра Laravel добавляются в балансировщик нагрузки, любой вход в систему Socialite завершается неудачно с ошибкой недопустимого состояния.
Внутренняя ошибка сервера HTTP 500
Laravel \ Socialite \ Two \ InvalidStateException
AbstractProvider-> user ()
/ app / Http / Controllers / Auth / LoginController. php (строка 108)
// Get google user data
$google = Socialite::driver('google')->user();
У меня та же проблема с обоими Google и логины Facebook. Если я пытаюсь войти в систему вручную или зарегистрировать нового пользователя, я получаю 419 | Страница просрочена, но ни одна из этих проблем не возникает, когда у балансировщика нагрузки есть только один экземпляр, или я не использую балансировщик нагрузки.
Спасибо,
Ли.