Рейтинг:0

Веб-сайты не загружаются должным образом в балансировке нагрузки Nginx

флаг np

У меня есть 3 таких сервера Nginx -

  • lab01.net => 192.168.89.128 (балансировщик нагрузки)
  • lab02.net => 192.168.89.129 (внутренняя часть)
  • lab03.net => 192.168.89.130 (внутренняя часть)

-------------- конфигурация lab01.net ----------

восходящий сервер {
        сервер lab02.net:443;
        сервер lab03.net:443;
}



сервер {
        слушать 80;
        слушать [::]:80;

        имя_сервера lab01.net;
        вернуть 301 https://lab01.net$request_uri;
}

сервер {
        слушать 443 ssl http2;
        слушать [::]:443 ssl http2;
        имя_сервера lab01.net;

        ssl_certificate /etc/nginx/ssl/ssl.pem;
        ssl_certificate_key /etc/nginx/ssl/ssl.key;

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

}

------------------- конфигурация lab02.net --------------------------

сервер {
        слушать 8080;
        слушать [::]:8080;

        имя_сервера lab02.net;
        вернуть 301 https://lab02.net$request_uri;
}

сервер {
        слушать 443 ssl http2;
        слушать [::]:443 ssl http2;
        имя_сервера lab02.net;

        корень /srv/www/ru;
        индекс index.html index.htm;

        ssl_certificate /etc/nginx/ssl/ssl.pem;
        ssl_certificate_key /etc/nginx/ssl/ssl.key;

}

------------------ Конфигурация lab03.net -----------------------

сервер {
        слушать 8080;
        слушать [::]:8080;

        имя_сервера lab03.net;
        вернуть 301 https://lab03.net$request_uri;
}

сервер {
        слушать 443 ssl http2;
        слушать [::]:443 ssl http2;
        имя_сервера lab03.net;

        корень /srv/www/es;
        индекс index.html index.htm;

        ssl_certificate /etc/nginx/ssl/ssl.pem;
        ssl_certificate_key /etc/nginx/ssl/ssl.key;

}

Firewalld 8080, HTTP и HTTPS разрешены на всех серверах.

Политика Selinux «semanage fcontext -a -t httpd_sys_content_t «/srv/www(/.*)?» есть на каждом сервере lab02.net и lab03.net, а «setsebool -P httpd_can_network_connect» — на балансировщике нагрузки lab01.net Nginx.

Все работает нормально, но проблема в том, что когда я загружаю веб-сайты, они отображаются неправильно. Буквы, изображения, контент и т. д. находятся не на том месте, которому они принадлежат. Когда я использую только index.html для проверки, все в порядке, но когда я использую настоящий веб-сайт с шаблонами HTML и CSS, проблема начинает появляться.

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

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

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