GORAGOD.com
freelance, web developer, web designer, hosting, domain name
Home
Host & Domain
Portfolio
ทำเว็บไซต์ 2 ภาษาด้วย .htaccess
Home
Forum
ทำเว็บไซต์ 2 ภาษาด้วย .htaccess
ttong
ผมทำเว็บไซต์ที่มี 2 ภาษา โดยแบ่งหน้าภาษาไทยกับภาษาอังกฤษ เป็นแบบนี้
www.website.com/th/
www.website.com/en/
ทีนี้ หากมีคนเข้าที่ www.website.com ผมต้องการให้ redirect ไปที่ www.website.com/th/
ผมต้องเขียน .htaccess ยังไงครับ หรือสามารถใช้วิธีอื่นได้
ขอบคุณครับ
goragod
หลายวิธีครับ
เช่น สร้างไฟล์ index.php ที่ root โดยถ้าเรียกไปที่ไฟล์นี้ ให้ rediurect ไปยัง page ที่ต้องการ
<?php
// root/index.php
header("Location : /th/index.php");
?>
ถ้า htaccess
RewriteRule ^(.*)$ /th/index.php [R,L]
น่าจะประมาณนี้ครับ
ttong
เดี๋ยวผมจะลองดู ขอบคุณมากครับ
ttong
ผมลองดูแล้วครับ ยังไม่ได้
ผมมีไฟล์ .htaccess อยู่แล้ว และมีโค้ดประมาณนี้ครับ
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.+) - [PT,L]
RewriteRule ^(.*) index.php
Options -Indexes
ไม่แน่ใจว่าที่ไม่ได้เพราะมันไปตีกับโค้ดเก่าหรือเปล่า
goragod
โค้ดนี้ไม่เกี่ยวข้องเลยครับ มันเป็นการ redirect ไปยัง index.php หากไม่พบหน้าเพจ
จริงๆแล้วอาจต้องทดสอบนะครับ เพราะมันอาจขึค้นกับเงื่อนไขอื่นๆด้วย เช่น path หรือ โครงสร้างของ site ที่มีอยู่
เช่นที่พบปัญหาบ่อยๆ ว่า .htaccess ไม่สามารถทำงานได้ตามต้องการ ก็เพราะว่า มันพบว่ามีเพจที่ตรงตามเงื่อนไขที่เรียกอยู่ก่อนแล้ว
ความคิดเห็น
รายละเอียด
ไฟล์อัปโหลด ชนิด jpg, jpeg ขนาดไฟล์ไม่เกิน 1024
^
เช่น สร้างไฟล์ index.php ที่ root โดยถ้าเรียกไปที่ไฟล์นี้ ให้ rediurect ไปยัง page ที่ต้องการ
<?php
// root/index.php
header("Location : /th/index.php");
?>
ถ้า htaccess
RewriteRule ^(.*)$ /th/index.php [R,L]
น่าจะประมาณนี้ครับ
ผมมีไฟล์ .htaccess อยู่แล้ว และมีโค้ดประมาณนี้ครับ
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.+) - [PT,L]
RewriteRule ^(.*) index.php
Options -Indexes
ไม่แน่ใจว่าที่ไม่ได้เพราะมันไปตีกับโค้ดเก่าหรือเปล่า
จริงๆแล้วอาจต้องทดสอบนะครับ เพราะมันอาจขึค้นกับเงื่อนไขอื่นๆด้วย เช่น path หรือ โครงสร้างของ site ที่มีอยู่
เช่นที่พบปัญหาบ่อยๆ ว่า .htaccess ไม่สามารถทำงานได้ตามต้องการ ก็เพราะว่า มันพบว่ามีเพจที่ตรงตามเงื่อนไขที่เรียกอยู่ก่อนแล้ว