2012-03-20 5 views
0

мне нужно сделать следующее .. наткнулись различными примерами, но мне нужно, чтобы объединить три условиярегулярного выражения для перенаправления нон WWW для WWW и поддомена в файл

перенаправлять 1) перенаправление не являющихся WWW/Non запросов поддоменов. например:

http://xyzsite.com в http://www.xyzsite.com

2) перенаправления, если поддомен упоминается. например:

http://user1.xyzsite.com в http://www.xyzsite.com/profile?user1

3) перенаправлять на мобильную версию. например:

http://m.xyzsite.com в http://www.xyzsite.com/m

Tech детали: Я нахожусь на IIS версии 6 & с помощью модуля

+1

какая версия IIS? – Tomek

ответ

0

1.

  • Match: ^xyzsite.com$
  • Перенаправление: www.xyzsite.com

2.

  • Match: ^(?!=www.)(.*).xyzsite.com$
  • Перенаправление: www.xyzsite.com/profile?$1

3.

  • Match: ^m.(.*)$
  • Перенаправление: www.$1/m
-1

helicontech Isapi_Rewrite Я провел некоторое время на это hopefuly вы в правильном направлении. Я придумал самое простое решение, если вы не указали ограничение явно. Это означает, что я жестко задал xyzsite.com в регулярном выражении. Это актуально более важно для решения проблемы

1) перенаправлять запросы без www/non subdomain. например: http://xyzsite.com в http://www.xyzsite.com

pattern: 
http://(.*?.com) 

replacement: 
http://www.$1 

2) перенаправления, если поддомен упоминается. например: http://user1.xyzsite.com в http://www.xyzsite.com/profile?user1

pattern: 
(http://)(.*?)\.(.*) 

replacement: 
$1www.$3/profile?$2 

3) перенаправлять на мобильную версию. например: http://m.xyzsite.com в http://www.xyzsite.com/m

pattern: 
http://m\.(.*) 

replacement: 
http://www.$1/m 

Надеется, что это помогает, Buckley

+0

ваш ответ на 1) перенаправит 'http: // www.xyzsite.com' на' http: // www.www.xyzsite.com', а затем на http: //www.www.www.xyzsite. com' в бесконечной цепочке переадресации – Bohemian

0

Вот правил ISAPI_Rewrite v3 (надеюсь, это версия, которую вы используете):

RewriteBase/
RewriteCond %{HTTP_HOST} ^xyzsite\.com$ 
RewriteRule .? http://www.xyzsite.com [NC,R=301,L] 

RewriteCond %{HTTP_HOST} ^m\.xyzsite\.com$ 
RewriteRule .? http://www.xyzsite.com/m [NC,R=301,L] 

RewriteCond %{HTTP_HOST} ^(?!www\.)([^.]+)\.xyzsite\.com$ 
RewriteRule .? http://www.xyzsite.com/profile?%1 [NC,R=301,L]