|
|
|
|
|
當用戶在移動端訪問到PC版網(wǎng)頁時,是希望自動跳轉(zhuǎn)到移動端網(wǎng)頁的。此前我介紹過在網(wǎng)頁上用JS來判斷移動端和實現(xiàn)跳轉(zhuǎn),本文要介紹的是,對于ASP.NET網(wǎng)站 ,如何通過Web.config實現(xiàn)移動端判斷并跳轉(zhuǎn)。
實例代碼
<system.webServer>
<rewrite>
<!--移動端直接跳轉(zhuǎn)到移動h5頁面-->
<rules>
<rule name="userAgentsRewrite" stopProcessing="true">
<match url="^Factory$" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_USER_AGENT}" pattern="Android|Linux|iPhone|iPad|Phone|Mobile|MicroMessenger|micromessenger" />
</conditions>
<action type="Redirect" url="/mobile/#/" />
</rule>
</rules>
</rewrite>
</system.webServer>
代碼解釋
首先要安裝 URL_Rewrite 重寫模塊,否則 Web.config 里面配置 <rewrite> 是會報錯的!
安裝 URL_Rewrite 重寫模塊,很簡單,只需下載一個文件,幾秒鐘安裝完畢,參看下文及下載安裝文件。
上面的配置,是當判定為移動端的時候,XXXX.com/Factory
會跳轉(zhuǎn)到 XXXX.com/mobile/#/
。
<match>
是原地址。
<conditions>
是判定條件(只要滿足條件,才進行重定向)。
{HTTP_USER_AGENT}
是獲取瀏覽器UA,pattern列舉了移動端的UA名稱。
<action>
中 type 選 Redirect
時,配置重定向地址。
以上都可以用正則表達式。
總結(jié)
本文是從全局來處理重定向問題,通過簡單的設(shè)置即可實現(xiàn),無需在各個頁面單獨設(shè)置那么麻煩,所以是一個值得推薦使用的方法。
不過正如前面說的,你需要安裝一個URL_Rewrite重寫模塊,好在安裝此模塊文件十分簡單。
至于rewrite重寫規(guī)則,你可以參考實例介紹Web.config rewrite規(guī)則設(shè)置url重寫功能這篇文章。
相關(guān)文章