ผมทำเว็บไซต์ที่มี 2 ภาษา  โดยแบ่งหน้าภาษาไทยกับภาษาอังกฤษ เป็นแบบนี้

www.website.com/th/

www.website.com/en/



ทีนี้ หากมีคนเข้าที่ www.website.com ผมต้องการให้ redirect ไปที่ www.website.com/th/

ผมต้องเขียน .htaccess ยังไงครับ หรือสามารถใช้วิธีอื่นได้



ขอบคุณครับ
กรกฎ วิริยะ 30 Jul 2012 09:11
หลายวิธีครับ



เช่น สร้างไฟล์ index.php ที่ root โดยถ้าเรียกไปที่ไฟล์นี้ ให้ rediurect ไปยัง page ที่ต้องการ



<?php

  // root/index.php

  header("Location : /th/index.php");

?>



ถ้า htaccess



RewriteRule ^(.*)$ /th/index.php [R,L]



น่าจะประมาณนี้ครับ
ttong 30 Jul 2012 10:09
เดี๋ยวผมจะลองดู ขอบคุณมากครับ
ttong 01 Aug 2012 11:04
ผมลองดูแล้วครับ ยังไม่ได้

ผมมีไฟล์ .htaccess อยู่แล้ว และมีโค้ดประมาณนี้ครับ



Options +FollowSymLinks

RewriteEngine on



RewriteCond %{REQUEST_FILENAME} -f [OR]

RewriteCond %{REQUEST_FILENAME} -d

RewriteRule ^(.+) - [PT,L]

RewriteRule ^(.*) index.php



Options -Indexes




ไม่แน่ใจว่าที่ไม่ได้เพราะมันไปตีกับโค้ดเก่าหรือเปล่า

กรกฎ วิริยะ 01 Aug 2012 18:23
โค้ดนี้ไม่เกี่ยวข้องเลยครับ มันเป็นการ redirect ไปยัง index.php หากไม่พบหน้าเพจ



จริงๆแล้วอาจต้องทดสอบนะครับ เพราะมันอาจขึค้นกับเงื่อนไขอื่นๆด้วย เช่น path หรือ โครงสร้างของ site ที่มีอยู่



เช่นที่พบปัญหาบ่อยๆ ว่า .htaccess ไม่สามารถทำงานได้ตามต้องการ ก็เพราะว่า มันพบว่ามีเพจที่ตรงตามเงื่อนไขที่เรียกอยู่ก่อนแล้ว