Posts Tagged ‘Drupal’

แกปัญหา .htaccess ของ Drupal กับ URL แบบ User Directory

Wednesday, April 21st, 2010

สำหรับใครที่ใช้ Drupal มาคงทราบว่ามันฉลาดมาก

ไม่ว่าเราจะย้าย directory ไปไว้ที ่root ของ domain เช่น

http://192.168.1.10

หรือจะใน subdirectory เช่น

http://192.168.1.10/drupal

เราก็ไม่ต้องแก้ไข config อะไรเลย มันรู้ของมันเอง!!

แต่มาวันนี้ผมเจอ case ประหลาดครับ

พอดี domain ของลูกค้ายังไม่พร้อม production URL ก็เลยเป็น direct URL แบบนี้ชั่วคราว

http://192.168.1.10/~myuser

ปรากฏว่าหน้าแรกเข้าได้ปกติ แต่หน้าอื่นเข้าไม่ได้เลย เจอ 404 ตลอด – -!!

ตอนแรกคิดว่าสงสัย .htaccess ของ host มันชนกับของ Drupal แน่เลย

จึงลองถาม เทพ Drupal ได้วิธีแก้ง่ายๆมาคือแก้ .htaccess ของ Drupal ดังนี้

RewriteBase /~myuser

โดยปกติบรรทัด RewriteBase จะ comment เอาไว้ แล้วโดยทั่วไปเราก็ไม่ต้อง uncomment มันด้วย

แต่ Case นี้ที่ต้องเพิ้ม RewriteBase เนื่องจากว่า .htaccess ของ host มีการกำหนด RewiteRule สำหรับ User Directory นั่นเอง

ผมเข้าใจว่า ถึงแม้ไม่ใช่ User Directory แต่หากเราวาง Drupal ไว้ใน subdirectory และที่ชั้นบนมี RewiteRule ด้วย ก็คงเจอปัญหาเดียวกัน