PDA

View Full Version : Technique การแปลง URL



asylu3
23-07-2005, 12:38 AM
เนื่องจากผมต้องการ redirect request ทุกอันที่มาจากการเรียก http://www.olddomain.com/forum2/view.php

ไปยังหน้าเว็บใหม่

http://www.newdomain.com/forum2/view.php

แต่ปัญหาคือ การเรียก view.php นั้นมีการส่งค่าตัวแปรต่างๆไปด้วยเช่น

http://www.olddomain.com/forum2/view.php?T...615&page=0#6045 (http://www.olddomain.com/forum2/view.php?TopicID=2615&page=0#6045)

ทำให้การ redirect แบบ tag header ธรรมดาไม่ได้ต้องมีการเปลี่ยนค่าชุด URL ด้านหน้าที่ต่างกันคือ

http://www.olddomain.com/forum2/ ---> http://www.newdomain.com/forum2/

ซึ่งหนึ่งในวิธีแก้ปัญหาที่ผมใช้คือให้สร้าง file view.php ขึ้นมาแทนที่ไฟล์เดิมในฝั่งที่ผู้ใช้เรียก
http://www.olddomain.com/forum2/ ด้วย code ต่อไปนี้


<?

$str=explode("/", $_SERVER['REQUEST_URI'] );
$size=sizeof($str);
$last= $str[$size-1];
$target="http://www.newdomain.com/forum2/".$last;
header("location:$target");

?>


ผลที่ได้คือทุกครั้งที่มีการเรียกหน้า
http://www.olddomain.com/forum2/view.php?T...615&page=0#6045 (http://www.olddomain.com/forum2/view.php?TopicID=2615&page=0#6045)

จะ redirect ไปเปิดหน้า

http://www.newdomain.com/forum2/view.php?T...615&page=0#6045 (http://www.newdomain.com/forum2/view.php?TopicID=2615&page=0#6045)

โดยอัตโนมัติ

ปล.อาจจะเป็นวิธีแบบถึกๆหน่อยแต่ก็ใช้ได้ผลครับ

studenmts
02-08-2005, 01:06 PM
เหอะๆๆๆ แบบว่าไม่เคยเลยอะคับ ไม่เคยใช้เลยอะ