Перенаправление без показа нового URL-адреса [PT] - PullRequest
0 голосов
/ 17 июля 2011

У меня есть сервер Apache, работающий в Linux. На том же хосте я использую Xen с Windows Server 2008 + IIS. Windows получает другой IP-адрес.

Хост живет за NAT, и я настроил его на прямой порт 80 для Linux и 8080 для Windows.

Apache предлагает виртуальный хост для обработки входящих запросов, но их нужно просто перенаправить в IIS, поэтому мое правило перезаписи можно выразить следующим образом:

<VirtualHost ...>
ServerName www.firstdomain.com
...
RewriteEngine On
RewriteOptions Inherit
RewriteRule ^/(.*) http://www.seconddomain.com:8080/$1 [R,L]

Это прекрасно работает, поскольку запрос на www.seconddomain.com поступает в Apache VH, который переписывает URL-адрес как www.secondomain.com:8080, и, следовательно, браузер теперь использует IIS.

Мой вопрос: я не хочу, чтобы пользователь видел, что URL изменился; Я хочу, чтобы он вел себя так, как работает сквозной параметр для правил.

Как я могу это сделать? И, если переписать правила - это неправильный подход, что лучше?

Обновление

Я нашел флаг [P] roxy для правил. Это (почти) прекрасно работает. Я могу поместить файл в корень IIS и обратиться к нему через http://www.seconddomain.com/tst.html - однако ссылки в документе не перенаправляются должным образом, например, <img src='/images/tst.jpg' /> терпит неудачу, показывая, что на его месте должно было быть изображение ... что еще мне нужно?

1 Ответ

0 голосов
/ 17 июля 2011

ок, все работает.Я просто был тупым.[P] это именно то, что мне нужно.

...