laravel или AWS не обнаруживают мой https

Я настроил свой beanstalk AWS с помощью моей ssl-сертификации, эта работа, но в процессе работы мой laravel не обнаруживает https, поэтому он генерирует URL-адрес HTTP, а не HTTPS-URL. Так что ошибка моего приложения.

Например, я создаю маршрут

Route::get('current', function ()
{
    return URL::current();
});

И это покажет мне:

AWS соединение

На местном, которые работают очень хорошо:

локальная связь

Почему он не генерирует https URL? Спасибо,

2 ответа

Решение

Elastic Beanstalk работает за балансировщиком нагрузки. Балансировщик нагрузки передает все запросы к EC2. Он перенаправляет заголовки в запрос, и поэтому вам необходимо настроить класс запросов Symfony, чтобы он мог правильно интерпретировать, как был сделан запрос.

Самый простой способ сделать это - использовать TrustedProxy от Fideloper.

Обновите ваш файл.htacces следующим

RewriteCond% {SERVER_PORT} 80

RewriteRule ^ (. *) $ https://www.yourdomain.com/$ 1 [R, L]

Другие вопросы по тегам