Рейтинг:0

Обратный прокси nginx отправляет ссылки в http

флаг cn

У меня есть обратный прокси-сервер nginx, работающий на основе рабочей настройки. здесь. Он отправляет страницу на наш сервер (apache) правильно, за исключением того, что страница возвращается со всеми ссылками в http (сама страница https). Я знаю, что изменение конфигурации должно быть сделано на бэкэнде (apache), я просто не знаю, где.

Вот моя исходная установка:

    сервер {
слушать 80;
имя_сервера пример.com;

переписать ^(.*) https://$server_name$1 навсегда;
 }
    сервер {
слушать 443;
имя_сервера пример.com;

корень /var/web/;

SSL включен;
ssl_certificate /etc/apache2/ssl/server.crt;
ssl_certificate_key /etc/apache2/ssl/server.key;

# --------------------------------------------- ----------------
# https://mozilla.github.io/server-side-tls/ssl-config-generator/
# сгенерировать с помощью openssl dhparam -out dhparams.pem 2048
ssl_dhparam /etc/apache2/ssl/dhparam.pem;


ssl_prefer_server_ciphers включен;
ssl_session_timeout 1 д;
ssl_session_cache общий: SSL: 50 м;
ssl_session_tickets выключен;

# Параметр Диффи-Хеллмана для наборов шифров DHE, рекомендуемые 2048 бит
#ssl_dhparam /etc/pki/nginx/dh2048.pem;

# промежуточная конфигурация. настроить под свои нужды.
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM- SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE- RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS- AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:ECDHE-RSA-DES-CBC3-SHA:ECDHE-ECDSA-DES-CBC3-SHA:AES128- GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4 :!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA';

место расположения / {
    прокси_пароль http://127.0.0.1:8080;
    proxy_set_header Хост $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto https;
}

}

Конфигурация апача

    <VirtualHost *:8080>
    ServerName localhost:8080
    ServerAlias 127.0.0.1:8080
    DocumentRoot /var/web/
    DirectoryIndex index.html index.xhtml
# - absorb the shared virtual host settings
    </VirtualHost>
флаг us
Пожалуйста, добавьте полную информацию о настройке к этому вопросу.
флаг cn
В итоге я добавил строку «add_header 'Content-Security-Policy' 'upgrade-insecure-requests';» к моей директиве местоположения, которая, кажется, исправила это. Это правильный способ настроить это?
флаг us
Нет, вам нужно настроить любое программное обеспечение, генерирующее эти ссылки, чтобы создавать правильные ссылки.
флаг cn
Хорошо, я посмотрю на это. Спасибо за помощь
флаг cn
Просто чтобы обновить, ответ Теро был правильным. Я обновил модуль Perl, создав ссылки, чтобы он заработал.
Рейтинг:0
флаг pk

Использовать возвращаться вместо переписать.

сервер {
    слушать 80;
    имя_сервера пример.com;
    вернуть 301 https://$host$request_uri;
}

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

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