Download Articles Stats About us Contact us
HomePHP

วิธีใช้ htaccess

ตัวอย่างที่ 1

ไฟล์ .htaccess ใช้เพื่อเปลี่ยนเส้นทาง url เช่น

url จริง คือ
http://www.palthai.com/article_view.php?id=1

ผมต้องการให้คนเข้าเว็บ โดยพิมพ์ url สั้น ๆ เช่น
http://www.palthai.com/cat.htm

ผมจะเขียนไฟล์ .htaccess แบบนี้
RewriteEngine On

RewriteRule cat.htm articles_view.php?id=1
หมายถึง ถ้ามีคนจะดูหน้า cat.htm ให้ไปเรียกหน้า articles_view.php?id=1 มาแสดงแทน

ตัวอย่างที่ 2

url จริง คือ
http://www.example.com/study_view.php?id=1

ผมต้องการให้ url จำง่าย เลยเปลี่ยนเป็น
http://www.example.com/study-in-usa/arkansas-state-university.html

ผมเลยเขียนไฟล์ .htaccess แบบนี้
RewriteEngine On

RewriteRule ^study-in-(.*)/(.*).html study_view.php?kw=$2&country=$1
เมื่อกรอก url เป็น
http://www.example.com/study-in-usa/arkansas-state-university.html

ข้อความหลัง study-in- จะเป็นตัวแปร country
ข้อความก่อน .html จะเป็นตัวแปร kw
แล้วให้ไปเรียกไฟล์ study_view.php ขึ้นมาทำงานแทน โดยส่งตัวแปรไป 2 ตัว คือ
http://www.example.com/study_view.php?kw=arkansas-state-university&country=usa

ส่วนในฐานข้อมูล นอกจากค่า ID ผมเพิ่มค่า KEYWORD ไปด้วย
เช่น ID = 1, KEYWORD = 'arkansas-state-university'

ดังนั้น เมื่อเรียกดู study_view.php โดยอ้างอิง keyword = 'arkansas-state-university' เลยมีค่าเท่ากับอ้างอิง id = 1

ตัวอย่างที่ 3

url จริง
http://www.example.com/main.php?url=baan&bid=1
http://www.example.com/main.php?url=about
http://www.example.com/main.php?url=board

url ใหม่
http://www.example.com/baan.php?id=1
http://www.example.com/about.php
http://www.example.com/board.php

ผมเขียนไฟล์ .htaccess แบบนี้
 
RewriteEngine On

RewriteBase /

RewriteCond %{QUERY_STRING} ^url=baan&bid=(.*)$
RewriteRule ^main.php baan.php?id=%1  [R=301,L]

RewriteCond %{QUERY_STRING} ^url=(.*)$
RewriteRule ^main.php %1.php?  [R=301,L]
คือ เราต้องเอาค่าตัวแปรมาใช้ด้วย เลยต้องเขียน 2 บรรทัด

2 เม.ย. 58
© 2000 - 2024 palthai.com. All rights reserved.