無需額外安裝 ISAPI 擴展,直接在 web.config <system.webServer> 區段聲明規則。
...
name:規則唯一標識,**不可重複**。match url:正則模式匹配 **相對 URL 路徑** (不含查詢字串)。ignoreCase:大小寫敏感度。action type:
url="Substitution":目標路徑,支援後向參考 {R:0} (完整匹配)、{R:1} (第一個捕獲組) 等。appendQueryString:是否保留原查詢字串 (預設 true)。目標:/articles/abc.html → 內部重寫至 /articles/Default.aspx?SubClass=abc
| 場景 | IIS 6 (URLRewriter.dll) | IIS 7+ (原生) |
|---|---|---|
| 捕獲組引用 | $1, $2 | {R:1}, {R:2} |
| 查詢字串連接 | & (需寫 &) | & (直接寫,XML 編碼自動處理) |
| 條件判斷 | 無 (需寫多條規則) | <conditions> 支援 {HTTP_HOST}, {REQUEST_URI}, {QUERY_STRING} 等 |
~/article/(\w+)/(\d{8})/(\w+).html
~/article/default.aspx?Sub=$1&UrlName=$3
conditions 排除)。rewriteMaps。