Как я использую .htaccess условные перенаправления для нескольких доменов?

Я использую VMware Server 1.0.9 с Windows 7 Ultimate и имею работу Прокси SLES этого. Это работает отлично!

0
задан 1 February 2011 в 22:10
1 ответ

Одна опция состояла бы в том, чтобы поместить переписать правила в различные блоки <VirtualHost>. например:

<VirtualHost *:80>
  ServerName www.redirectsite1.com
  RewriteEngine On
  RewriteRule ^$ http://targetsite.com/search.html?state=PA&id=75 [QSA,R,L]
  RewriteRule ^PGN$ http://targetsite.com/search.html?state=PA&id=26 [QSA,R,NC,L]
  RewriteRule ^NS$ http://targetsite.com/search.html?state=PA&id=27 [QSA,R,NC,L]
  RewriteRule ^INQ$ http://targetsite.com/search.html?state=PA&id=28 [QSA,R,NC,L]
  RewriteRule ^AA$ http://targetsite.com/search.html?state=PA&id=29 [QSA,R,NC,L]
  RewriteRule ^PI$ http://targetsite.com/search.html?state=PA&id=30 [QSA,R,NC,L]
  RewriteRule ^GV$ http://targetsite.com/search.html?state=PA&id=31 [QSA,R,NC,L]
  # catch-all rule, using the same id as the organic visit
  RewriteRule ^([a-z]+)?$ http://targetsite.com/search.html?state=PA&id=75 [QSA,R,NC,L]
</VirtualHost>

<VirtualHost *:80>
  ServerName www.redirectsite2.com
  RewriteEngine On
  # rule for organic visit first
  RewriteRule ^$ http://targetsite.com/search.html?state=NJ&id=68 [QSA,R,L]
  RewriteRule ^SL$ http://targetsite.com/search.html?state=NJ&id=6 [QSA,R,NC,L]
  RewriteRule ^APP$ http://targetsite.com/search.html?state=NJ&id=8 [QSA,R,NC,L]
  # catch-all rule, using the same id as the organic visit
  RewriteRule ^([a-z]+)?$ http://targetsite.com/search.html?state=NJ&id=68 [QSA,R,NC,L]
</VirtualHost>

Другая опция состояла бы в том, чтобы поместить RewriteCond %{HTTP_HOST} ^www\.redirectsite1\.com$ перед каждым RewriteRule для сайта 1 и RewriteCond %{HTTP_HOST} ^www\.redirectsite2\.com$ перед каждым RewriteRule для сайта 2.

0
ответ дан 24 November 2019 в 12:33

Теги

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