«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Виртуальный хост Apache: добавление обратного прокси-сервера

Виртуальный хост Apache: добавление обратного прокси-сервера

Опубликовано 8 ноября 2024 г.
Просматривать:209

Apache Virtual Host: Adding reverse proxy

Что такое обратный прокси?

Обратный прокси-сервер действует как посредник, который пересылает клиентские запросы на другие серверы. Он часто используется для балансировки нагрузки, безопасности, кэширования или пересылки HTTP-запросов на внутренние серверы (например, приложение, работающее на Node.js, Python, PHP или другом сервере).

Apache позволяет вам настроить это с помощью модулей mod_proxy и mod_proxy_http. Вот руководство о том, как это сделать.

Сценарий

Мы собираемся настроить Apache в качестве обратного прокси-сервера для серверной службы, например сервера, работающего на локальном хосте через порт 8080.

Шаги по настройке обратного прокси:

1.Включите необходимые модули

Во-первых, вам необходимо включить прокси-модули в Apache:

sudo a2enmod proxy sudo a2enmod proxy_http

Перезапустите Apache, чтобы модули вступили в силу:

sudo systemctl restart apache2 

2.Настройте виртуальный хост с обратным прокси-сервером

Теперь отредактируйте файл конфигурации вашего виртуального хоста, который мы создали ранее, чтобы добавить директивы прокси.

Откройте файл конфигурации:

sudo your_editor /etc/apache2/sites-available/php.conf

добавьте строки конфигурации прокси внутри блока :


    ServerAdmin webmaster@localhost
    ServerName php.info
    DocumentRoot /var/www/html/php

    # Reverse Proxy Directives
    ProxyPreserveHost On
    ProxyPass / http://localhost:8080/
    ProxyPassReverse / http://localhost:8080/

    
        AllowOverride All
        Require all granted
    

    # Logs for debugging
    ErrorLog ${APACHE_LOG_DIR}/php_error.log
    CustomLog ${APACHE_LOG_DIR}/php_access.log combined

Эти директивы выполняют следующие действия:

  • ProxyPreserveHost On: сохраняет исходный заголовок Host от клиента, когда Apache отправляет запрос на внутренний сервер.
  • ProxyPass / http://localhost:8080/: перенаправляет все запросы, поступающие в Apache, на сервер, прослушивающий порт 8080.
  • ProxyPassReverse / http://localhost:8080/: отображает запрос обратно в Apache, что означает, что ответы от серверной части изменяются так, чтобы они выглядели так, как будто они пришли непосредственно от Apache.

3.Перезапустите Apache

После внесения изменений перезапустите Apache еще раз:

sudo systemctl restart apache2

4.Протестируйте обратный прокси

Теперь, когда вы получаете доступ к http://php.info, Apache будет перенаправлять запросы на серверную часть, прослушивающую http://localhost:8080.

Заявление о выпуске Эта статья воспроизведена по адресу: https://dev.to/xxzeroxx/apache-virtual-host-adding-reverse-proxy-k7?1. Если обнаружено какое-либо нарушение прав, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3