• September 19, 2018

    เนื่องจากข้อความใน url นั้นมีความสำคัญต่อ SEO มากในหลายๆ กรณีเราอยากจะใส่ข้อความภาษาไทยใน urlแต่ไม่สามารถทำได้ตรงๆ ครับ ต้องใช้ mod_rewrite เข้ามาช่วย
    mod_rewrite เป็น module ยอดนิยมของ apache เลยก็ว่าได้เนื่องจากขึ้นชื่อในการทำ url ให้อยู่ในรูปแบบที่สวยงามและ seo friendly

    1. สร้าง html file ง่ายๆ 2 file ใน folder public_html
    โดยใช้ชื่อว่า ภาษาไทย.html และ thai.html และให้ทั้ง 2 file มี content เหมือนกัน

    2. จากนั้นให้ลองเข้า ภาษาไทย.html และ thai.html
    จะพบว่า thai.html สามารถเข้้าได้ตามปกติ แต่ภาษาไทย.html ไม่สามารถเข้าได้
    โดยขึ้น error ว่า The requested URL …html was not found on this server.

    3. ที่นี้ลองแก้โดยสร้าง .htaccess file ใน folder public_html และให้ใส่ rewrite rule ดังนี้

    Options +FollowSymLinks
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.+)$ index.php?url=$1 [L]

    อธิบายการทำการได้ดังนี้ หากไม่พบ file หรือ directory ที่ระบุ ( บรรทัด 3-4) ให้ทำการ rewrite url ภาษาไทยไปที่ index.php

    4. จากข้อ 3 ที่ทำการ rewrite url ภาษาไทยไปที่ index.php
    ที่นี้ใน index.php เราก็ต้อง include url ภาษาไทย (ได้มาจาก HTTP GET)
    เข้ามาเพื่อแสดงผล โดยเขียน script ได้ดังนี้

    if(!empty($_GET[‘url’]))
    include(iconv(‘UTF-8’, ‘TIS-620’, $_GET[‘url’]));
    ?>

    5. ทดลองเข้า ภาษาไทย.html จะได้ผลลัพธ์เช่นเดียวกับ thai.html



เวอไนน์ไอคอร์ส

ประหยัดเวลากว่า 100 เท่า!






เวอไนน์เว็บไซต์⚡️
สร้างเว็บไซต์ ดูแลเว็บไซต์

Categories