Apache mod_rewrite
提供了基於正則運算式規則動態修改傳入的請求的 URL 的方法。這用於以自己喜歡的任意方法映射任意 URL 到你的內部 URL 結構。
它支持無限的規則,以及為每個規則附加條件,從而提供了一個真正靈活且強大的 URL 操作機制。URL 操作可以依賴於各種測試,例如伺服器變數,環境變數,HTTP 頭,時戳,甚至外部資料庫查詢等,以便完成 URL 單元匹配。
這個模組在伺服器上下文 (httpd.conf
),虛擬主機上下文 (<VirtualHost>
指令塊),目錄上下文 (.htaccess
檔和 <Directory>
指令塊) 對完整的 URL (包含目錄資訊部分和查詢字串部分) 操作。重寫結果可以導致新的規則處理,內部的後續處理,外部請求重定向,甚至透過內部代理, 這取決於你為規則附加的標誌。
既然 mod_rewrite
這麼強大,它當然是相當複雜。這篇文檔作為參考手冊的補充,試圖減輕一些複雜性, 提供你可能使用 mod_rewrite
的常見場景的有充分注釋的例子。但是,也要告訴你,在什麼時候不應當使用 mod_rewrite
, 可以使用其他標準的 Apache 特性來達到目的,以避免無謂的複雜性。
- mod_rewrite參考手冊
- 正則運算式與 mod_rewrite 入門
- 使用 mod_rewrite 重定向和重新映射 URL
- 使用 mod_rewrite 控制訪問
- 動態虛擬主機與 mod_rewrite
- 動態代理與 mod_rewrite
- 使用 RewriteMap
- 高級技術與訣竅
- 何時不要使用 mod_rewrite
上一篇:
Apache伺服器範圍配置
下一篇:
Apache認證和授權