พื้นฐานของการนำทางอินเทอร์เน็ตคือไฮเปอร์ลิงก์ ผู้ใช้ย้ายจากหน้าหนึ่งไปอีกหน้า จากไซต์หนึ่งไปอีกไซต์หนึ่ง โดยทั่วไปแล้ว ผู้ใช้จะเป็นผู้ตัดสินใจว่าจะทำการเปลี่ยนแปลงเมื่อใด อย่างไรก็ตาม บางครั้งหลังจากดำเนินการบางอย่างบนเพจ คุณต้องเปลี่ยนเส้นทางผู้ใช้ไปยังหน้าอื่นบนไซต์หรือแม้แต่ทรัพยากรอื่นโดยอัตโนมัติ
มันจำเป็น
- - ความสามารถในการแก้ไขสคริปต์ของไซต์
- - ความสามารถในการแก้ไขไฟล์.htaccess
- - ความสามารถในการเปลี่ยนเทมเพลตหน้า
- - ความสามารถในการเปลี่ยนรหัส html ของหน้า
คำแนะนำ
ขั้นตอนที่ 1
เปลี่ยนเส้นทางผู้ใช้ไปยังทรัพยากรอื่นโดยเพิ่มฟิลด์ตำแหน่งไปที่ส่วนหัวการตอบสนอง HTTP ของเซิร์ฟเวอร์ แก้ไขสคริปต์ของระบบจัดการเนื้อหาหรือกำหนดค่าเซิร์ฟเวอร์ (เช่น โดยเปิดใช้งานโมดูล ModRewrite Apache และเพิ่มคำสั่งที่เหมาะสมลงในไฟล์.htaccess) เพื่อให้ฟิลด์ Location ปรากฏในส่วนหัวตามความเหมาะสม
เนื้อหาของฟิลด์ Location ของส่วนหัวการตอบสนอง HTTP ของเซิร์ฟเวอร์ต้องเป็น URI สัมบูรณ์ของทรัพยากรที่ทำการเปลี่ยนเส้นทาง ในกรณีส่วนใหญ่ ตัวแทนผู้ใช้จะดาวน์โหลดข้อมูลทรัพยากรที่ระบุทันที แม้ว่ารหัสตอบกลับของเซิร์ฟเวอร์จะระบุว่าข้อความมีเนื้อหา อย่างไรก็ตาม เมื่อดำเนินการเปลี่ยนเส้นทาง คุณควรจำกัดตัวเองให้ส่งเฉพาะส่วนหัวตอบกลับที่มีเฉพาะช่องสถานะที่มีรหัสที่ถูกต้องและช่องตำแหน่ง
เลือกรหัสตอบกลับจากช่วงค่า 301-303 ตาม อาร์เอฟซี 2616 สร้างส่วนหัวขั้นต่ำและส่งต่อไปยังตัวแทนผู้ใช้ ตัวอย่างเช่น ใน PHP โค้ดการสร้างส่วนหัวอาจมีลักษณะดังนี้
ส่วนหัว ('HTTP / 1.0 303');
ส่วนหัว ('ตำแหน่ง:
โปรดทราบว่าเมื่อใช้ ModRewrite คุณสามารถเลือกรหัสตอบกลับที่ต้องการได้
ขั้นตอนที่ 2
เปลี่ยนเส้นทางผู้ใช้โดยใช้เมตาแท็กโดยตั้งค่าแอตทริบิวต์ http-equiv เพื่อรีเฟรช เมตาแท็กถูกเพิ่มลงในส่วน HEAD ของเอกสาร เนื้อหาของแอตทริบิวต์เนื้อหาของแท็กนี้ต้องเป็นสตริงที่ประกอบด้วยตัวเลขที่ระบุการหน่วงเวลา (เป็นวินาที) ก่อนเปลี่ยนเส้นทางและ URI ของทรัพยากรเป้าหมาย (สัมบูรณ์หรือแบบสัมพัทธ์) คั่นด้วยเครื่องหมายจุลภาคจากตัวเลข ตัวอย่างเช่น หากต้องการเปลี่ยนเส้นทางผู้ใช้ 10 วินาทีหลังจากโหลดหน้า คุณสามารถใช้รหัสต่อไปนี้:
เทคนิคที่คล้ายคลึงกันนี้มักใช้เพื่อสร้างหน้าสแปลชที่ปรากฏขึ้นหลังจากที่ผู้ใช้ดำเนินการบางอย่าง
ขั้นตอนที่ 3
ดำเนินการเปลี่ยนเส้นทางโดยใช้สคริปต์ฝั่งไคลเอ็นต์ ใช้ความสามารถในการเปลี่ยนคุณสมบัติของตำแหน่งของหน้าต่างและวัตถุเอกสาร ตัวอย่างที่ง่ายที่สุดของโค้ด HTML ที่กำหนดชิ้นส่วนของ JavaScript ที่ฝังอยู่ในเอกสารอาจมีลักษณะดังนี้:
document.location = "https://codeguru.ru";
ขอแนะนำให้รวมวิธีการเปลี่ยนเส้นทางนี้กับวิธีที่อธิบายไว้ในขั้นตอนที่สองโดยเปลี่ยนคุณสมบัติตำแหน่งในฟังก์ชันตัวจัดการเหตุการณ์ตัวจับเวลา