Google oauth2 перенаправляет запросы с субдомена на основной домен - PullRequest
0 голосов
/ 06 января 2020

У меня есть домен, https://faduense.com, где я успешно ввел логин с помощью Google Oauth2 с использованием паспорта. Приложение представляет собой приложение Mern, которое обрабатывает вход через API, выполненный в Node.

Теперь, поскольку приложение немного тяжелое, я хочу переместить мое приложение на поддомен, https://app.faduense.com, который я уже сделал, он работает на своем собственном сервере.

Проблема сводится к следующему: я изменил все свои настройки внутри моей задней и передней части, но когда я нажимаю войти с помощью Google это по-прежнему отправляет мои запросы в основной домен: https://faduense.com

Я даже пытался создать другое приложение через консоль Google и добавить новый клиент и секретный идентификатор, но он по-прежнему маршрутизирует его через основной домен.

Это мои настройки:
Настройки паспорта.

Passport settings

Мои маршруты API пользователя, которые go to https://app.faduense.com/api/users/

enter image description here

И мое всплывающее окно на передней части, которое выглядит следующим образом. enter image description here

Наконец мои учетные данные, которые выглядят так: enter image description here

Я теряю слова. Что я сделал,

Я попытался изменить свой URI перенаправления в приложении основного домена, созданном на консоли Google, что привело к ошибке redirect_uri_mismatch

Я попытался добавить URI перенаправления субдомена в приложение основного домена созданный в консоли Google, который ничего не сделал.

Я пытался манипулировать параметрами, отправленными через адресную строку браузера, но безрезультатно.

Если вы go до https://app.faduense.com/login и нажмете логин через Google, URL запроса отправит следующий URL: https://accounts.google.com/o/oauth2/v2/auth?response_type=code&redirect_uri=https%3A%2F%2Ffaduense.com%2Fapi%2Fusers%2Fauth%2Fgoogle%2Fusuario&scope=profile%20email&client_id=54622388608-9ml71v7gsj9f2avru52hpgmh0auudbur.apps.googleusercontent.com

Вы можете видеть, что в redirect_uri явно отсутствует поддомен. У меня нет большого опыта, я много искал, но я вижу, что мой единственный выход - попросить кого-то с большим опытом. Есть какие-нибудь подсказки? спасибо

1 Ответ

0 голосов
/ 09 января 2020

Наконец-то я решил.
Я не знаю, как именно я это сделал, но вот что я сделал:

  1. Сначала я удалил учетные данные в консоли Google API.
  2. Затем я создал новые учетные данные непосредственно с помощью URL субдомена.
  3. Я изменил свой секретный идентификатор и идентификатор клиента в паспорте JS; а также изменение моего URL-адреса во внешнем интерфейсе.
  4. При тестировании в среде dev получала ошибку redirect_uri, но это нормально, так как я использовал localhost, и мои учетные данные были установлены с моим окончательным URL-адресом.
  5. Использовал putty для входа в мой экземпляр EC2, я сделал sudo systemctl stop nginx, чтобы остановить сервер.
  6. Я вытащил свое обновленное хранилище из github с новым секретом и идентификатор клиента из новых учетных данных.
  7. Перезагрузил экземпляр на панели AWS.

  8. Наконец, я снова запустил nginx, sudo systemctl start nginx.

  9. Проверьте его в режиме реального времени и его работу.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...