May
19
2009

IIRF – mod_rewrite สำหรับ IIS

1,156 views

ชื่อเต็มของ IIRF คือ Ionics Isapi Rewrite Filter
ทำหน้าที่เหมือน mod_rewrite แต่ทำงานบน IIS

ที่สำคัญ free! พร้อมด้วยคุณสมบัติที่ดีเยี่ยม เร็วและมีประสิทธิภาพ (เวปเขาโม้ไว้ว่าแบบนี้)
ทำงานได้บน IIS 5.0, 5.1, 6.0, และ 7.0.

วิธีการติดตั้งก็ไม่ยาก โดยเมื่อดาวน์โหลดเสร็จแล้วให้  unzip
จะมีไฟล์ที่จำเป็นอยู่ 1 ไฟล์ ใน folder lib/IsapiRewrite4.dll

ขั้นตอน
1. ให้สร้าง directory C:\Windows\System32\inetsrv\IIRF แล้วนำ IsapiRewrite4.dll ไปวางไว้
2. สร้างไฟล์ชื่อ IsapiRewrite4.ini ไว้ที่ Desktop ก่อน ตัวอย่างนี้สำหรับป้องกัน hotlink (แอบมาใช้รูปของเราโดยเอา url รูปไปดื้อๆ มันเปลือง bandwidth)
ตัวอย่างไฟล์ IsapiRewrite4.ini

RewriteLog  C:\temp\iirf
 
RewriteCond %{HTTP_REFERER} 		^(?!HTTP_REFERER)
RewriteCond %{HTTP_REFERER} 		^(?!http?://(?:www\.)mysite.com/)   [I]
RewriteCond %{HTTP_REFERER} 		^(?!http?://(?:images\.|www\.)?(cache|google|googlebot|yahoo|msn|ask|picsearch|alexa)\..*)   [I]
RewriteCond %{HTTP_USER_AGENT}		^(?!.*google|yahoo|msn|ask|picsearch|alexa|clush|botw.*) [I]
RewriteRule .*(?!logo).*\.(?:gif|jpg|jpeg|png)$ 	/hotlink.gif   [I,L]

3. นำไฟล์ IsapiRewrite4.ini ที่ Desktop ไปไว้ใน C:\Windows\System32\inetsrv\IIRF
4. กำหนด permission user ของ IIS (ขึ้นต้นด้วย IUSR_***) ให้ read ได้ทั้ง 2 ไฟล์คือ
C:\Windows\System32\inetsrv\IIRF\IsapiRewrite4.dll
C:\Windows\System32\inetsrv\IIRF\IsapiRewrite4.ini

5. เปิด Internet Service Manager (MMC) ขึ้นมา
6. ไปที่ Web Sites ที่ต้องการใช้ rewrite แล้วคลิกขวาเลือก properties
7. ไปที่ ISAPI filter กด add ตั้งชื่อว่า Ionic Rewriter แล้ว browse ไปที่ C:\Windows\System32\inetsrv\IIRF\IsapiRewrite4.dll
8. restart IIS เสร็จพิธี

ถ้าอยากได้ตัวอย่าง rewrite อื่นๆ ไปที่นี่ เลยครับ


Written by Pipo in: Web Developer | Tags: , ,

No Comments »

RSS feed for comments on this post. TrackBack URL

Leave a comment

Powered by WordPress | Aeros Theme | TheBuckmaker.com WordPress Themes