ASP的URL重寫技術(IIS的ISAPI)[轉]
ASP的的的URL重寫技術(IIS的ISAPI)[轉]
閱讀次數:131 次 來源:admin 發布時間:這兩天搗鼓個程序,想做成靜態頁面生成的重轉,于是寫技上網找了些資料,搜到了URL重寫技術,的的例如可以將提交的重轉地址http://www.xxx.com/info_122.htm映射到真正的地址 http://www.xxx.com/info.asp?id=122上去,這樣有利于提高GOOGLE等搜索引擎的寫技收錄率。
好了,的的說正題,重轉想要IIS支持URL重寫,寫技得先裝個ISAPI
點擊下載此文件
下載后解壓到任意文件夾,的的給IIS用戶讀取權限,重轉在IIS右鍵點擊一個站點,寫技屬性,的的ISAPI篩選器,重轉添加,寫技篩選器名稱一定得叫 re,可執行文件就點瀏覽找到你解壓的目錄Rewrite.dll加上即可。
重啟IIS后應該就能支持URL重寫規則了。
需要修改解壓目錄中的httpd.ini這個文件
RewriteRule /info_(\d+)\.htm /info\.asp\?id=$1 [N,I]
這句話就可以把提交的地址http://www.xxx.com/info_122.htm映射到真正的地址 http://www.xxx.com/info.asp?id=122
如果你在處理數據翻頁,那么寫法是:
More_<%=Page%>_<%=type%>.html (注:page是翻頁頁數,type是數據類型)
表現形式:More_1_95.html
如果翻下一頁,則為:More_2_95.html,繼續下一頁的循環,則是:
More_3_95.html,以此類推。
不過你需要在httpd.ini文件中增加以下代碼:
RewriteRule /More_(\d+)_(\d+)\.html /jsp/more\.jsp\?page=$1&type=$2 [N,I]
如果你的動態程序有多個參數需要傳遞,那么就增加多個(\d+)即可,如下:
RewriteRule /More_(\d+)_(\d+)_(\d+)\.html /jsp/more\.jsp\?page=$1&type=$2&type2=$3 [N,I]
翻頁處理表現形式是:More_1_95.html
這個BLOG就是我剛剛安裝了URL重寫篩選器,修改了一些原代碼,弄成現在這個半靜態的樣子,實際上還是動態的。
如果想把http://www.xxx.com/info.asp?id=50#abc 轉換成靜態的網頁
因為#abc是程序處理了ID=50這個變量生成靜態頁面之后按錨點又做了一次頁內鏈接,所以應該這么做映射
http://www.xxx.com/info.asp?id=50#abc轉換成http://www.xxx.com/info_50.htm#abc,重寫規則如下:
RewriteRule /info_(\d+)\.htm#(\d+) /info\.asp\?id=$1#$2 [N,I]
下載ISAPI