Рейтинг:0

Смешанный контент обратного прокси-сервера NGINX, вероятно, ошибка конфигурации

флаг sa

я использую Сервер А (NGINX как веб-сервер для WordPress) и Сервер Б (NGINX в качестве обратного прокси-сервера) и после получения SSL-сертификатов от Let's Encrypt с Certbot на Сервер Б я получаю

Смешанный контент: страница «https://example.net/» была загружена более 
 HTTPS, но запросил небезопасный скрипт 
«http://xx.xx.xx.xx/wp-includes/js/wp-emoji-release.min.js?ver=5.8». 
Этот запрос был заблокирован; контент должен передаваться через HTTPS.

И страница загружается без каких-либо JPG или CSS.
Конфигурация сервера А

сервер {
            слушать 80;
            корень /var/www/wordpress;
            индекс index.php index.html;

            журнал_доступа /var/log/nginx/example.access.log;
            error_log /var/log/nginx/example.error.log;

            место расположения / {
                        try_files $uri $uri/ =404;
            }

            расположение ~ \.php$ {
                         включить фрагменты/fastcgi-php.conf;
                         fastcgi_pass unix:/run/php/php7.4-fpm.sock;
            }

            местоположение ~ /\.ht {
                         отрицать все;
            }

            местоположение = /favicon.ico {
                         log_not_found выключен;
                         доступ_лог выключен;
            }

            местоположение = /robots.txt {
                         позволять все;
                         log_not_found выключен;
                         доступ_лог выключен;
           }

            расположение ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
                         истекает макс.;
                         log_not_found выключен;
           }

            расположение /wp-admin/ {
                индекс index.php
            try_files $uri $uri /index.php?$args;
    }
}

Конфигурация сервера B

сервер {
    если ($ host = example.net) {
        вернуть 301 https://example.net$request_uri;
    }

    если ($ хост = www.example.net) {
        вернуть 301 https://example.net$request_uri;
    }

   имя_сервера пример.net www.example.net;
    слушать 80;
    вернуть 404;

}
сервер {
        слушать 0.0.0.0:443 ssl http2;

        имя_сервера пример.net www.example.net;

         ssl_certificate /etc/letsencrypt/live/example.net/fullchain.pem;
         ssl_certificate_key /etc/letsencrypt/live/example.net/privkey.pem;

        местоположение ~ /.well-known/acme-challenge {
                позволять все;
        }

    место расположения / {

    прокси_пароль http://xx.xx.xx.xx/;
    proxy_read_timeout 90;
    proxy_connect_timeout 90;
    прокси_перенаправление выключено;
    proxy_set_header X-Forwarded-Host $host;
    proxy_set_header X-Forwarded-Server $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $ схема;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Хост $host;
    proxy_ssl_server_name включено;

    }
}

На Сервер А размещен WordPress. Может ли кто-нибудь помочь мне, потому что, вероятно, мои файлы конфигурации испорчены.... Заранее спасибо.

Решение: добавлено в Nginx cfg:

add_header 'Content-Security-Policy' 'upgrade-insecure-requests';

Также изменены в WordPress Адрес WordPress (URL) и Адрес сайта (URL).

Michael Hampton avatar
флаг cz
Привет, решения не должны быть опубликованы выше в вашем **вопросе**, а ниже в вашем **ответе**.

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

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