Cách thức hoạt động cũng tương tự như URLRewrting.NET. URL Rewrite Module được cài thêm vào IIS 7 sẽ bắt tất cả các request tới website và viết lại (rewrite) cho đúng để IIS xử lý.
Thí dụ
URL thực để xử lý phải là
Để sử dụng URL Rewrite Module,
- Download và install URL Rewrite Module 2.0 (hoặc mới hơn)
- Viết rewrite rules trong web.config hoặc có thể thêm/sửa/xóa trong IIS Manager
- Có thể rewrite, redirect, hoặc end request
- Chỉ cần cài module 1 lần trên IIS, không cần cài trên từng website
- Thiết lập rewrite rules cho từng site
- URL Rewrite Module cũng dùng RegularExpression làm nền tảng cho việc nhận dạng chuỗi.
Trong URL Rewrite Module có Inbound Rules và OutBound rules.
Inbound rules giống như ví dụ trên, xử lý URL ảo như là 1 URL thực. Outbound rules ngược lại, trong code HTML vẫn xuất ra dạng URL thực, nhưng khi hiển thị tới người dùng, sẽ hiển thị dạng URL ảo
Các rules được định nghĩa trong file web.config của website. Thay vì dùng $1, $2... như URLRewriting.NET, thì dùng {R:1} {R:2}....
Ví dụ Inbound rules
<rewrite>
<rules>
<rule name="Product-HTML" stopProcessing="true">
<match url="(.*)-p(\d+)c(\d+)\.html" />
<action type="Rewrite" url="/Default.aspx?P=ProductDetail&articleID={R:2}&categoryID={R:3}" />
</rule>
</rules>
</rewrite>