blog chatree.in.th

วิธี remove index.php ออกจาก URL ใน codeigniter

ปกติแล้ว URL ของ Codeigniter จะเป็น

http://localhost/index.php/controllers_name

เราจะมาเอา index.php ออกกัน เพื่อจะได้ URL ที่สวยงาม หลังจากที่เราทำการติด Codeigniter ไปแล้ว (วิธีติดตั้ง Codeigniter)

http://localhost/controllers_name

ขั้นตอนแรกสร้าง file .htaccess ไปวางใน folder ที่เราติดตั้ง Codeigniter

สร้าง file .htaccess

สร้าง file .htaccess

นำ code ด้านล่างนี้ไปใส่ใน file .htaccess

ขั้นตอนต่อไปเราจะต้องไปตั้งค่าใน apache เพื่อให้ file .htaccess ทำงานได้ ให้เราเปิด XAMPP Control Panel ขึ้นมา แล้วคลิกที่ config ของ Apache แล้วเลือก Apache (httpd.conf)

Config Apache

Config Apache

เมื่อคลิกที่ Apache (httpd.conf) แล้วจะมีไฟล์ httpd.conf ขึ้นมาให้เราแก้ไข ให้เราค้นหาคำว่า mod_rewrite

open module mod rewrite

open module mod rewrite

โดยปกติตรงบรรทัด LoadModule rewrite_module modules/mod_rewrite.so จะมีเครื่องหมาย # อยู่ด้านหน้าสุด ให้ลบเครื่องหมาย # ออก

เมื่อแก้ไขเสร็จแล้วให้เราทำการ save file httd.conf ให้เรียบร้อย แล้วไป restart apache ตัว module mod_rewrite ก็จะทำงานได้แล้ว

ทดสอบด้วยการเข้าไปที่ default controller ของ codeigniter ให้เข้าไปที่ http://localhost/codeigniter/welcome

codeigniter welcome

codeigniter welcome

ก็จะได้ URL ที่สวยงามไม่ต้องมาพิมพ์ index.php ใน URL อีกต่อไป