วันนี้ผมได้ทำการทดลองรันเว็บ wordpress บน server windows 2008 r2 แล้วได้พบกับปัญหา ว่า url rewrite ของ microsoft ไม่รองรับภาษาไทย
ปัญหาคือ url rewrite ไม่รองรับ ภาษาไทยของ wordpress พอเปลี่ยน permalink เป็น %postname% ซึ่ง ใน apache นั้นใช้งานได้ปกติ แต่ใน iis7.5 กลับ ขึ้น 404 page not found ครับ ถ้า post url เป็นภาษาอังกฤษ จะใช้งานได้ไม่มีปัญหาอะไร
ซึ่งค่า web.config ของผมเป็นดังนี้ครับ
<?xml version=”1.0″ encoding=”UTF-8″?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name=”wordpress” patternSyntax=”Wildcard”>
<match url=”*” />
<conditions>
<add input=”{REQUEST_FILENAME}” matchType=”IsFile” negate=”true” />
<add input=”{REQUEST_FILENAME}” matchType=”IsDirectory” negate=”true” />
</conditions>
<action type=”Rewrite” url=”index.php” />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
ซึ่งข้อสันนิฐานเบื้องต้นเป็นเพราะ url encoding ของ windows ไม่รองรับเครื่องหมาย “%” ซึ่งใช้ในภาษาไทย
หลังจากที่ได้ทำการค้นหาข้อมูลต่างๆ ผมก็เริ่มถอดใจเลิกใช้ iis7.5 รัน wordpress อีกต่อไป แล้วหันมาใช้ apache+mod_rewrite เหมือนเดิม
ข้อสรุปคือ ควรใช้ wordpress ร่วมกับ server linux ที่รับ apache+mod_rewrite เท่านั้นครับ
บทความโดย อนุพงษ์ เกรียงไกรลิปิกร