====== Обратное проксирование (Nginx Reverse-proxy) ====== ====== Настройка Reverse-proxy на базе Nginx ====== Руководство по установке Nginx и настройке обратного проксирования (Reverse-proxy) для перенаправления веб-трафика на внутренние серверы. ===== Часть 1: Установка веб-сервера ===== Установите пакет веб-сервера Nginx из репозитория: Copy apt-get update && apt-get install -y nginx Добавьте Nginx в автозагрузку и запустите службу прямо сейчас: Copy systemctl enable --now nginx ===== Часть 2: Настройка конфигурации проксирования ===== Создайте конфигурационный файл для ваших сайтов в директории ''%%sites-available.d%%'' (имя файла может быть любым, например ''%%имя_конфига.conf%%''): Copy vim /etc/nginx/sites-available.d/имя_конфига.conf Добавьте следующие блоки конфигурации ''%%server%%'' для каждого маршрутизируемого домена. Обратите внимание на пояснения в комментариях. **Пример файла конфигурации:** Copy server { # Привязать сервер к стандартному веб-порту listen 80; # Указать домен, по которому будет доступен первый сервис server_name ваш_домен_1; location / { # Указать, куда перенаправлять трафик (внутренний сервер) proxy_pass http://ip_внутреннего_сервера_1:порт; # Передать домен, на который изначально был сделан запрос proxy_set_header Host $host; # Передать протокол запроса (http/https) proxy_set_header X-Forwarded-Proto $scheme; # Передать реальный IP-адрес клиента proxy_set_header X-Real-IP $remote_addr; # Передать полную цепочку адресов proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } server { # Можно сделать этот сервер по умолчанию для порта 80, добавив default_server listen 80 default_server; # Домен для второго сервиса server_name ваш_домен_2; location / { # Перенаправление трафика на второй внутренний сервер proxy_pass http://ip_внутреннего_сервера_2:порт; proxy_set_header Host $host; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } ===== Часть 3: Активация конфигурации ===== Чтобы Nginx "увидел" созданный файл конфигурации, необходимо создать на него символическую ссылку в директории ''%%sites-enabled.d%%'': Copy ln -s /etc/nginx/sites-available.d/имя_конфига.conf /etc/nginx/sites-enabled.d/ Перезапустите службу Nginx для применения изменений: Copy systemctl restart nginx ===== Часть 4: Проверка работоспособности ===== Для проверки работы обратного проксирования откройте браузер на клиентской машине и попытайтесь зайти на настроенные домены: * ''%%http://ваш_домен_1%%'' — должен открыться первый внутренний сервис. * ''%%http://ваш_домен_2%%'' — должен открыться второй внутренний сервис. Убедитесь, что клиентская машина способна разрешить доменные имена (настроен локальный DNS-сервер или прописаны адреса в файле hosts).