Рейтинг:0

Используя Docker для запуска приложения laravel, я получаю загрузку контента с http, а не с https

флаг cn

Я докерзирую свое приложение laravel, и когда оно загружается, я получаю сообщение об ошибке, говорящее о том, что смешанный контент не может быть обслужен. Я смотрю исходный код html-страницы, и он загружает файл app.js из схемы http, несмотря на то, что я нахожусь на https. Когда я устанавливаю то же приложение laravel на свой собственный сервер nginx с перенаправлением на https, app.js отображается с https. Так что дело не в laravel. Как заставить nginx conf внутри Docker передавать контент на https? Мой текущий файл .conf таков:

сервер {
    индекс index.php index.html;
    журнал_ошибок /var/log/nginx/error.log;
    журнал_доступа /var/log/nginx/access.log;
    корень /var/www/html/public;
    расположение ~ \.php$ {
        try_files $uri = 404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        включить fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_path_info;
    }
    место расположения / {
        try_files $uri $uri/ /index.php?$query_string;
        gzip_static включен;
    }
}


флаг vn
Вероятно, вам нужно сказать Laravel, чтобы он доверял трафику, идущему из сети Docker. https://laravel.com/docs/8.x/requests#configuring-trusted-proxy Попробуйте доверять `*`, а затем сузьте круг, если это поможет.
флаг cn
я хочу настроить это на nginx, так как я создаю сервис, где люди могут загружать свои собственные приложения laravel, и я не хочу заставлять их добавлять или изменять свой исходный код
флаг vn
В приложении Laravel происходит генерация URL-адресов, а в Laravel есть встроенный и задокументированный способ обработки прокси-серверов, таких как nginx, Docker, балансировщики нагрузки и т. д. Вот в чем заключается решение.

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

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