@Kosyachella

Проксирование rewrite_mod в apache?

Изначально запрос идет на внешнюю машину с nginx, где настроено проксирование на машину с apache, которая должна раскидывать запросы по конкретным адресам.

Необходимо проксирование запроса на определенный ip во внутренней сети, ip содержится в самом URL.

Пример, при введении адреса shop.24.4.test.info запрос должен уйти по адресу 15.10.24.4/shop (первые 2 числа ip везде одни)

RewriteEngine on
	RewriteRule "~^.*shop(.*)\.test\.info.*$" http://15.10$1/shop


При попытке проксировать на http://15.10$1/shop прокся апача выдает ошибку. Видимо переменную $1 нельзя за реврайт выносить
  • Вопрос задан
  • 36 просмотров
Решения вопроса 1
@dodo512
http://domain/path
В какой части адреса находится shop.24.4.test.info?
RewriteRule проверяет только path, а доменное имя нужно искать в %{HTTP_HOST}.

RewriteRule shop(\.\d+\.\d+)\.test\.info http://15.10$1/shop [P]


Или
RewriteCond %{HTTP_HOST} shop(\.\d+\.\d+)\.test\.info
RewriteRule ^ http://15.10%1/shop [P]
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
mod_proxy по умолчанию не стоит его нужно доставлять
А прокси nginx и должен этим заниматься смысл выдумывать велосипед.
ну или на крайняк php proxy тоже знатно работает.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы