@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 тоже знатно работает.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы