🌐 Исключение URL-адресов из ProxyPass на Apache |

🌐 Исключение URL-адресов из ProxyPass на Apache

Мануал

Модуль mod_proxy в Apache позволяет перенаправлять запросы на другой сервер с помощью директив ProxyPass и ProxyPassReverse.

Однако в некоторых случаях вы можете захотеть исключить определенные URL из проксирования.

В этом руководстве мы покажем вам, как исключить URL из ProxyPass в Apache.

Первый шаг – определить URL, который вы хотите исключить.

Для этого руководства предположим, что мы хотим исключить URL “/static” из проксирования.

Исключение URL в Apache c ProxyPass

Apache proxy отправляет запросы слушателям бэкенда.

В некоторых случаях вам может понадобиться исключить URL для проксирования.

Например, у вас есть статическое содержимое, которое хранится в каталоге “/var/www/html/static”.

Приложение обслуживает статическое содержимое, URL-адреса которого начинаются с “/static”.

Вы хотите, чтобы все URL, которые начинаются с “/static”, обслуживались непосредственно из каталога без проксирования.

Вы можете сделать это, добавив следующую конфигурацию перед основными настройками ProxyPass.

ProxyPass /static !
Alias "/static" "/var/www/html/static"

Символы ! указывают apache, что не следует проксировать запросы, начинающиеся с подкаталога “/static”.

Алиас сопоставляет URL с каталогом “/var/www/html/static”.

Убедитесь, что вышеуказанная конфигурация добавлена до конфигурации ProxyPass.

Пример виртуального хоста выглядит следующим образом:

<VirtualHost *:80>
    ServerName example.com

    ProxyPass /static !
    Alias "/static" "/var/www/html/static"

    <Directory "/var/www/html">
    Require all granted
    </Directory>

    ProxyPreserveHost On
    ProxyPass / http://127.0.0.1:8080/
    ProxyPassReverse / http://127.0.0.1:8080/
</VirtualHost>

Внесите необходимые изменения в конфигурацию виртуального хоста Apache и перезапустите службу Apache.

Чтобы проверить конфигурацию, зайдите на URL, который вы исключили из прокси, в данном случае это будет “/static”.

Если конфигурация верна, вы должны увидеть содержимое вашего сайта, а не прокси на внутреннем сервере.

Заключение

В заключение следует отметить, что модуль mod_proxy Apache также предоставляет возможность выполнять URL, которые будут проксироваться.

Это может быть полезно для обслуживания статического контента непосредственно с веб-сервера вместо проксирования их на внутренний сервер.

В этом руководстве мы предоставили вам инструкции с примером, как исключить URL из ProxyPass в веб-сервере Apache.

Не забудьте протестировать свою конфигурацию после внесения изменений, чтобы убедиться, что она работает так, как ожидалось.

см. также:

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий