Rewritecond, чтобы изменить отображаемый хост, но не сервер

StackOverflow https://stackoverflow.com/questions/3009963

Вопрос

Выбрав титул к этому, ведет меня полагать, что это может быть невозможно из-за проблем безопасности, но я все равно спрошу. У меня есть поддержка короткого кода работает на моем сервере, давайте назовем это xx.yy

Я хочу это так, когда пользователь отправляет запрос на xx.yy, он просто изменяет отображаемый хост на другой действительный домен, работающий на той же коробке.

У меня это так далеко (позволяет серверу знать, чтобы принять запросы от xx.yy):

RewriteCond %{HTTP_HOST}   ^.*xx.yy [NC]
RewriteRule ^/(.*)$ http://127.0.0.1:<PORT_OMITTED>%{REQUEST_URI} [P,QSA,L]

RewriteCond %{HTTP_HOST}   ^.*mysite.com [NC]
RewriteRule ^/(.*)$ http://127.0.0.1:<PORT_OMITTED>%{REQUEST_URI} [P,QSA,L]

Работает, и направляет трафик в мое приложение, но говорит URL http://xx.yy Когда я предпочел бы сказать http://mysite.com

Я знаю, что могу перенаправить на http://mysite.com вместо 127.0.0.1, но у меня есть 4 параллельных ящика mysite.com И возвращаясь в DNS, может быть, пойти в другую коробку, похоже на отходы, когда я уже здесь. Кроме того, я не уверен, как почтовые запросы будут работать так.

Что я могу сделать?

Это было полезно?

Решение

Если mysite.com на той же коробке, а DNS указывает там, просто положить R=301 в [P,QSA,L]

Пример

RewriteEngine on
RewriteCond %{HTTP_HOST} ^OldDomain.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.OldDomain.com$
RewriteRule ^(.*)$ http://www.NewDomain.com/$1 [R=301,L]

От http://www.liewcf.com/redirect-webpages-to-another-domain-538/

Кроме того, хотя нет никаких способов по веским причинам делать то, что вы спрашиваете. Представьте, что если кто-то может ссылаться на LegitWebsite.com, но отправят ли он в Everyempire.com.

Это был бы хаос, вот что.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top