首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> 關於ASP.NET

ASP.NET 利用 URL Rewrite 動態生成靜態 .htm 頁面:零侵入式靜態化方案

     編輯:關於ASP.NET

專案需求:動態生成靜態 .htm 頁面,要求設定簡單、與業務邏輯解耦。解決方案:僅修改 web.config 引入 URLRewriter 元件,零程式碼修改即可達成靜態化與 URL 重導雙重效果。

核心設定節點

  • <configSections> 註冊 RewriterConfig 區段處理器。
  • <RewriterConfig> 定義重寫規則集合。
  • <httpModules> 掛載 URLRewriter.ModuleRewriter。
  • <httpHandlers> 對應 *.htm 至重寫處理器。

規則範例

<RewriterConfig>
  <Rules>
    <!-- 首頁導向靜態頁 -->
    <RewriterRule>
      <Type>Static</Type>
      <LookFor>~/Default\.aspx</LookFor>
      <SendTo>~/Default.htm</SendTo>
    </RewriterRule>
    <!-- 二級頁面導向動態處理 -->
    <RewriterRule>
      <Type>Dynamic</Type>
      <LookFor>~/List\.aspx</LookFor>
      <SendTo>~/Show.aspx</SendTo>
    </RewriterRule>
  </Rules>
</RewriterConfig>

關鍵優勢

  • Static 類型:直接對應實體 .htm 檔案,若檔案存在則直接輸出(高效能)。
  • Dynamic 類型:內部轉交至 .aspx 動態處理,適用需即時資料的頁面。
  • 正則支援:LookFor 採用 Regex,可批次對應大量 URL。
  • 不影響原有路由:重寫發生在 HTTP 模組階段,MVC/WebForm 路由邏輯完全不變。

文章提醒:web.config 註解完整,易於維護擴充;部署時需確認 IIS 對 .htm 副檔名對應至 ASP.NET ISAPI。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved