Я пытался реализовать вход в Facebook, используя symfony 4 && docker. Для того чтобы иметь протокол https на локальном хосте, я использую ngrok, поэтому URL теперь выглядит так:
https://a33efb94.ngrok.io
Но когда я нажимаю на Facebook, я получаю сообщение об ошибке:
Попробуйте перезагрузить страницу как https://
и в запросе URI у меня есть:
'redirect_uri=http%3A%2F%project.loc%2Fsecured%2Flogin_facebook&display=popup'
Чтобы решить эту проблему, я вставил жесткий код в public/index.php
:
$_SERVER['HTTP_HOST'] = 'a33efb94.ngrok.io';
$_SERVER['HTTPS'] = 'on';
Request::setTrustedProxies(
// trust *all* requests
['127.0.0.1', $request->server->get('REMOTE_ADDR')],
// if you're using ELB, otherwise use a constant from above
Request::HEADER_X_FORWARDED_AWS_ELB
);
Но это не разумное решение для меня. У вас есть идея, почему request_uri получает не URL, сгенерированный ngrok, а URL 'project.loc'? Пожалуйста, помогите мне и извините за мой английский.