Сегодня у нас задача настроить обратное проксирование службы Apache с помощью Nginx. Итак, приступим.
Содержание:
- Реализация обратного проксирования Apache 2.4 в Nginx
- Вывод настоящего IP-адреса клиента в логах Apache
- Выводы
Реализация обратного проксирования Apache 2.4 в Nginx
Сперва создаем файл конфигурации Nginx для нашего сайта, который нужно проксировать. Для этого вводим команду:
И добавляем следующее содержимое:
Активируем виртуальный хост conf24.net в Nginx:
Создаем файл конфигурации виртуального хоста conf24.net в Apache. Для этого сперва вводим команду:
Затем добавляем в него следующее содержимое:
Активируем виртуальный хост conf24.net в Apache:
Вывод настоящего IP-адреса клиента в логах Apache
Теперь нам необходимо активировать и настроить модуль Apache remoteip для того, чтобы он понимал проброс IP-адреса клиента через прокси-сервер Nginx, иначе в логах будет виден адрес клиента 127.0.0.1. Для этого воспользуемся модулем remoteip:
Создадим конфигурацию для модуля remoteip. Сперва воспользуемся командой:
Теперь добавим в него следующее содержимое:
Подправим формат логов в файле /etc/apache2/apache2.conf
, заменив %h
на %a
:
Подправим настройки интерфейсов и портов Apache в файле /etc/apache2/ports.conf
, чтобы он работал только на localhost:
Для того, чтобы изменения вступили в силу, необходимо перезапустить службы при помощи следующей команды:
Проверяем результат:
Готово! С поставленной задачей мы справились.
Выводы
Теперь Вы знаете, как реализовать обратное проксирование Apache 2.4 в Nginx и вывод настоящего IP-адреса клиента в логах Apache. Надеемся, это руководство было для Вас полезным.
Спасибо за время, уделенное на прочтение статьи!
Если возникли вопросы, задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco, курсы по кибербезопасности, полный курс по кибербезопасности, курсы DevNet / DevOps (программируемые системы) от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).
Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!
- Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
- Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
- Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
- Проведем вечерние онлайн-лекции на нашей платформе.
- Согласуем с вами удобное время для практик.
- Если хотите индивидуальный график — обсудим и реализуем.
- Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
- Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
- отредактировать или создать с нуля резюме;
- подготовиться к техническим интервью;
- подготовиться к конкурсу на понравившуюся вакансию;
- устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
1 комментарий. Оставить новый
Было бы неплохо детально описать эту часть конфига:
proxy_pass http://127.0.0.1:81;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
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 $scheme;
proxy_set_header X-Server-Address $server_addr;
# proxy_set_header X-Forwarded-For $remote_addr;