2013-03-20 3 views
4

Мы работаем на двух веб-сайтах, где один является веб-приложениями, а другой - мобильным приложением.URL-адрес переадресации/перезаписи при открытии из мобильного браузера

Так что я хочу создать URL перенаправления для перенаправления из приложения web-приложений в мобильное приложение для мобильных пользователей, но папка или структура разные.

Для веб-приложений это http://testrequest.com/home/Account/ и для мобильных устройств должно быть http://m.testresponce.com/mforyourhome/Account.aspx

Пожалуйста, может кто-нибудь помочь мне об использовании URL Rewrite.

Отредактировано: - Работа на IIS7

+0

Ваш вопрос не решен ? –

ответ

4

Вы можете использовать условие {HTTP_USER_AGENT}, чтобы сделать это.
Применительно к данному случаю, было бы следующим образом:

<rule name="Mobile Redirect" stopProcessing="true"> 
    <match url="^home/Account/$" ignoreCase="true" /> 
    <conditions logicalGrouping="MatchAny" trackAllCaptures="false"> 
     <add input="{HTTP_USER_AGENT}" pattern="midp|mobile|phone" /> 
     <add input="{HTTP_X-Device-User-Agent}" pattern="midp|mobile|phone" /> 
     <add input="{HTTP_X-OperaMini-Phone-UA}" pattern="midp|mobile|phone" /> 
    </conditions> 
    <action type="Redirect" url="http://m.testresponce.com/mforyourhome/Account.aspx" appendQueryString="false" /> 
</rule> 

Это будет соответствовать exactely home/Account/ и если пользователь просматривает с помощью мобильного устройства, то он/она будет перенаправлен на http://m.testresponce.com/mforyourhome/Account.aspx

Важно

Применить это правило только к http://testrequest.com/ (или, по крайней мере, не застревать в бесконечном перенаправлении).
User agent не бывает 100% достоверны (так как они могут быть изменены)

Источник: http://forums.iis.net/t/1169853.aspx

0

Чтобы заблокировать переадресацию при возвращении с мобильного сайта:

<rule name="Mobile Redirect" stopProcessing="true"> 
    <match url="^home/Account/$" ignoreCase="true" /> 
    <conditions logicalGrouping="MatchAll" trackAllCaptures="false"> 
    <add input="{HTTP_REFERER}" pattern="http://m.testresponce.com(.*)" negate="true" /> 
    <add input="{HTTP_USER_AGENT} {HTTP_X-Device-User-Agent} {HTTP_X-OperaMini-Phone-UA}" pattern="midp|mobile|phone" /> 
    </conditions> 
    <action type="Redirect" url="http://m.testresponce.com/mforyourhome/Account.aspx" appendQueryString="false" /> 
</rule> 

Смежные вопросы