1、使用isapi_rewrite進行動態鏈接重寫html靜態網址。isapi_rewrite是一個dll組件,re_write是iis里的一個模塊。這個篩選器實現是通過正則表達式,將動態網頁網址映射成為靜態網址。如可將news.asp?id=95通過re_write將其轉換成news/95.html。映射的正則表達式在httpd.ini文件里進行設置。
舉個小小例:處理數據翻頁,那么寫法是:
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.asp?page=$1&type=$2 [n,i] 字串9
如果你的動態程序有多個參數需要傳遞,那么就增加多個(d+)即可,如下:
rewriterule /more_(d+)_(d+)_(d+).html /asp/more.asp?page=$1&type=$2&type2=$3 [n,i]
優點:在程序上基本不需做什么變化。麻煩:要實現這個需要對iis進行控制,所以當你租用別人的服務器時,則需要先跟服務商聯系。(當然這個是對asp而言,asp.net教程就不用——直接將dll程序集放到程序中的bin再適當的配置即可實現)
2、iis的404錯誤處理機制:通過自定義錯誤,轉向我們準備好的處理頁。不過這種可拓展性有待研究,對程序處理的統籌要求也高,不大適合實際應用的樣子。
首先,設置站點屬性-自定意錯誤
找到http錯誤404,然后編輯屬性->消息類型選中url->url填入"/index.asp",或您的錯誤處理頁面.
這樣,比如用戶或蜘蛛訪問http://cn/12345.html 時(12345為文章在數據庫教程的id).由于些頁面不存在,所以觸發了404錯誤.轉向了index.asp
在index.asp里加
新聞熱點
疑難解答