Posts Tagged ‘ htaccess ’


301 Redirect

April 30, 2010 | Posted by LUV | No Comments

ไม่พูดพร่ำทำเพลง เข้าเรื่องกันเลยดีกว่าครับ ดูจากหัวข้อแล้วคงรู้กันแล้วนะครับว่า วันนี้ จะเขียนถึงเรื่องอะไร ใครที่กำลังหาเทคนิค Redirect อยู่นั้น วันนี้จะมาแนะนำการทำ 301 Redirect กันนะครับ ซึ่งที่จะแนะนำวันนี้นั้นสามารถใช้ได้กับ Website ที่ Run ด้วย Apache เท่านั้นนะครับ โดยเราจะใช้ File .htaccess ในการบอกกับ Web Server ว่าเราจะ Redirect อะไร อย่างไรบ้าง ซึ่งประโยชน์ของการ Redirect นั้นก็มีหลายอย่างครับ อย่างเช่น
- ในกรณีที่เรามีการปรับเปลี่ยน หรือ โยกย้ายเวปไซต์จนเป็นเหตุให้ URL ของหน้าเวปต่างๆ ของเรานั้นเปลี่ยนไป แต่ URL เก่าๆ ของ เวปไซต์เรานั้นอาจจะยังปรากฏอยู่ในที่ต่างๆ เช่น ใน Directory ที่เราเคยไป Submit ไว้ หรือ หน้า Search Results ของ Search Engine ซึ่งพอ User คลิกเข้าไปก็จะไปเจอหน้า 404 ถ้าเราไม่ทำการ Redirect หน้าเก่าไป หน้าใหม่

- ในเรื่องของ SEO นี่ก็มีผลนะครับ เนื่องจากการทำ 301 Redirect นั้น นอกจากมันจะ Redirect หน้าเก่าไปหน้าใหม่แล้ว มันยังส่งค่าต่างๆ ไปยังหน้าใหม่ของเราด้วย เช่น ค่า incoming links ที่หน้าเก่าเรามีอยู่

คราวนี้เรามาดูกันดีกว่าครับว่า เราจะใช้ 301 Redirect ได้อย่างรบ้าง

- Redirect แต่ละหน้า : เอาไว้สำหรับ Redirect บางหน้า วิธีก็คือ ใส่ Code นี้ใน File .htaccess
Redirect 301 /oldpage.html http://www.yoursite.com/newpage.html

- Redirect ทั้ง Website เลย : เหมาะกับคนที่เปลี่ยน Domian ใหม่ วิธีก็คือ ใส่ Code นี้ใน File .htaccess
Redirect 301 / http://www.newsite.com/

- Redirect สกุล File : อันนี้อาจจะเหมาะกับคนที่อาจจะเปลี่ยน Hosting ซึ่งอาจจะไม่ Support file บางอย่างเลยต้องเปลี่ยนไปใช้ File อื่น เช่น เปลี่ยน Host ที่ Run โดย IIS มาเป็น Host ที่ใช้ Apache ซึ่งของเดิม File อาจจะเป็น asp ก็ต้องเปลี่ยนมาเป็น php หรือ html วิธีก็คือ ใส่ Code นี้ใน File .htaccess
RedirectMatch 301 (.*)\.asp$ http://www.example.com$1.php
แต่ว่าในกรณีนี้ชื่อ File ต้องเหมือนกันนะครับ เช่น contact.asp กับ contact.php

-   Redirect จากที่ไม่มี www ให้ไป URL ที่มี www วิธีก็คือ ใส่ Code นี้ใน File .htaccess
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^yoursite.com [NC]
RewriteRule ^(.*)$ http://www.yoursite.com/$1 [L,R=301]
เนื่องจากบางกรณี Search Engine จะมองว่า เวปไซต์ http://yoursite.com กับ http://www.yoursite.com นั้น เป็นคนละเวปกัน

ครับก็ คิดว่าน่าจะเป็นประโยชน์กับใครหลายๆ คนนะครับ ลองเอาไปใช้กันดูนะครับ

Tags: , , ,