การทำงานของเครื่องมือติดตามการเปลี่ยนเส้นทาง HTTP
เครื่องมือนี้ทำหน้าที่วิเคราะห์ชุดหัวข้อการตอบกลับ HTTP (HTTP response headers) หรือลำดับของ URL (URL chains) ที่ผู้ใช้นำมาวาง เพื่อแสดงรายละเอียดในแต่ละขั้นตอนของการเปลี่ยนเส้นทาง (redirection) เครื่องมือจะระบุประเภทของการเปลี่ยนเส้นทาง ปลายทางของแต่ละขั้นตอน และตรวจจับปัญหาที่อาจเกิดขึ้น เช่น การเปลี่ยนเส้นทางแบบวนซ้ำ หรือการลดระดับความปลอดภัยจาก HTTPS เป็น HTTP
การวิเคราะห์ทั้งหมดเกิดขึ้นภายในเบราว์เซอร์ของผู้ใช้โดยตรง ไม่มีการอัปโหลดหรือบันทึกข้อมูลใดๆ ไปยังเซิร์ฟเวอร์ภายนอก เครื่องมือนี้จะวิเคราะห์เฉพาะข้อความที่ผู้ใช้วางเท่านั้น โดยไม่ได้เข้าชมหรือยืนยัน URL จริง ไม่ได้ทดสอบการเข้าถึงของเว็บไซต์ ไม่ได้ตรวจสอบความถูกต้องของส่วนหัว และไม่ได้จำลองพฤติกรรมของเบราว์เซอร์จริง
ข้อมูลนำเข้าและข้อจำกัดในการใช้งาน
ผู้ใช้สามารถระบุข้อมูลนำเข้าเพื่อทำการวิเคราะห์ได้ดังนี้:
- เริ่ม URL (ไม่บังคับ): URL ต้นทางที่สมบูรณ์ในรูปแบบ HTTP หรือ HTTPS ซึ่งจำเป็นต้องใช้ในกรณีที่ต้องการแก้ไขค่า Location แบบสัมพันธ์ในการตอบกลับครั้งแรก
- เปลี่ยนเส้นทางห่วงโซ่หรือส่วนหัวการตอบกลับ: บล็อกส่วนหัวการตอบกลับ HTTP ที่ต่อเนื่องกัน หรือบรรทัดสถานะและเป้าหมาย เช่น การระบุ URL เริ่มต้นตามด้วยบรรทัดในรูปแบบ
301 /newและ200หรือบรรทัดแหล่งที่มา-สถานะ-เป้าหมายที่สมบูรณ์
ข้อจำกัดและเงื่อนไขทางเทคนิค:
- รองรับขนาดข้อมูลนำเข้าสูงสุดไม่เกิน 100,000 อักขระ
- รองรับจำนวนขั้นตอนการเปลี่ยนเส้นทางสูงสุด 50 ฮอป (hops)
- หากข้อมูลนำเข้าไม่ถูกต้อง ผลลัพธ์ที่เคยแสดงอยู่ก่อนหน้าจะถูกล้างออกทั้งหมด
การตีความผลลัพธ์และการแสดงผล
เมื่อทำการวิเคราะห์ เครื่องมือจะแสดงข้อมูลสรุปในรูปแบบ ‹hops› วิเคราะห์แล้ว · ‹issues› ปัญหา และแสดงรายละเอียดในแต่ละฮอปดังนี้:
- ฮอป
‹index›: ลำดับขั้นตอนของการเปลี่ยนเส้นทาง - คำขอ URL: URL ต้นทางที่ส่งคำขอในฮอปนั้น
- Location: ค่าที่ระบุในส่วนหัว
Locationจากการตอบกลับ - เป้าหมายที่แก้ไขแล้ว: URL ปลายทางแบบสมบูรณ์ที่ได้จากการแปลงค่าในส่วนหัว
Location
ประเภทของการเปลี่ยนเส้นทางที่ตรวจพบ:
- ถาวร: สำหรับรหัสสถานะ 301 และ 308
- ชั่วคราว: สำหรับรหัสสถานะ 302, 303 และ 307
- คำตอบสุดท้าย: การตอบกลับขั้นสุดท้ายที่เป็นจุดสิ้นสุดของห่วงโซ่
- การตอบสนองอื่น ๆ: การตอบกลับที่นอกเหนือจากสถานะถาวร ชั่วคราว หรือสถานะสุดท้าย
ปัญหาและคำเตือนที่ตรวจพบในการเปลี่ยนเส้นทาง
เครื่องมือจะตรวจสอบและแสดงป้ายกำกับเตือนเมื่อพบปัญหาในห่วงโซ่การเปลี่ยนเส้นทาง ดังนี้:
| ปัญหาที่พบ | คำอธิบาย |
|---|---|
| วนซ้ำ | พบการเปลี่ยนเส้นทางที่ย้อนกลับมายัง URL เดิมในห่วงโซ่ ทำให้เกิดการทำงานแบบไม่สิ้นสุด |
| HTTPS ดาวน์เกรด | พบการเปลี่ยนเส้นทางจากโปรโตคอล HTTPS ที่ปลอดภัยไปยัง HTTP ที่ไม่ปลอดภัย |
| ขาด Location | ไม่พบส่วนหัว Location ในการตอบกลับที่ระบุให้มีการเปลี่ยนเส้นทาง |
| Location ไม่ถูกต้อง | ค่าในส่วนหัว Location มีรูปแบบที่ไม่ถูกต้องตามมาตรฐาน |
กลไกการแปลงค่า Location แบบสัมพันธ์
ในการเปลี่ยนเส้นทาง HTTP ค่าของส่วนหัว Location อาจระบุเป็นเส้นทางแบบสัมพันธ์ (relative URL) เช่น /signin เครื่องมือนี้จะทำการแปลงค่าดังกล่าวให้เป็น URL ที่สมบูรณ์โดยอิงตาม URL ของฮอปนั้นๆ
หากการตอบกลับในฮอปแรกสุดเป็นเส้นทางแบบสัมพันธ์ ผู้ใช้จำเป็นต้องระบุข้อมูลในช่อง "เริ่ม URL (ไม่บังคับ)" เพื่อเป็นฐานในการคำนวณ สำหรับฮอปถัดๆ ไป เครื่องมือจะใช้ "เป้าหมายที่แก้ไขแล้ว" จากฮอปก่อนหน้ามาเป็นฐานในการแปลงค่าโดยอัตโนมัติ
ข้อความแสดงข้อผิดพลาด
ในกรณีที่ข้อมูลนำเข้าไม่ถูกต้องตามเงื่อนไข เครื่องมือจะแสดงข้อความแจ้งเตือนข้อใดข้อหนึ่งดังต่อไปนี้:
วางห่วงโซ่การเปลี่ยนเส้นทางหรือส่วนหัวการตอบกลับก่อน(เมื่อไม่มีข้อมูลในช่องนำเข้า)อินพุตนี้มีขนาดใหญ่เกินไป เก็บไว้ไม่เกิน ‹max› อักขระ(เมื่อข้อมูลเกิน 100,000 อักขระ)ป้อน HTTP ให้สมบูรณ์ หรือ HTTPS โดยเริ่มตั้งแต่ URL(เมื่อ URL เริ่มต้นไม่ถูกต้อง)ไม่พบการตอบกลับ HTTP ในอินพุตนี้(เมื่อข้อมูลที่วางไม่มีรูปแบบส่วนหัวการตอบกลับที่ถูกต้อง)เครื่องมือนี้ยอมรับได้ถึง ‹hops› hops ต่อการติดตาม(เมื่อจำนวนฮอปเกิน 50 ฮอป)บรรทัด ‹line› ไม่ใช่ส่วนหัวการตอบกลับหรือบรรทัดสถานะและเป้าหมายที่สนับสนุน(เมื่อพบรูปแบบบรรทัดที่ไม่ถูกต้อง)
คำถามที่พบบ่อย (FAQ)
ถาม: ฉันสามารถวางรูปแบบการติดตามใดได้บ้าง ตอบ: วางบล็อกส่วนหัวการตอบกลับ HTTP ที่ต่อเนื่องกัน หรือใช้ URL เริ่มต้น ตามด้วยบรรทัด เช่น 301 /new และ 200 นอกจากนี้ยังยอมรับบรรทัดแหล่งที่มา-สถานะ-เป้าหมายที่สมบูรณ์อีกด้วย
ถาม: ค่า Location สัมพันธ์กันได้รับการแก้ไขอย่างไร ตอบ: ค่าเช่น /signin ได้รับการแก้ไขโดยเทียบกับ URL สำหรับการกระโดดนั้น เพิ่ม URL เริ่มต้นเมื่อการตอบกลับแรกใช้ Location แบบสัมพันธ์ การกระโดดในภายหลังจะใช้เป้าหมายที่ได้รับการแก้ไขก่อนหน้านี้
ถาม: เครื่องมือนี้เข้าชมหรือยืนยัน URLs หรือไม่ ตอบ: ไม่ โดยจะวิเคราะห์เฉพาะข้อความที่คุณวางเท่านั้น ไม่ได้ทดสอบว่าไซต์สามารถเข้าถึงได้หรือไม่ ส่วนหัวเป็นของแท้หรือไม่ หรือเบราว์เซอร์จะอยู่ในสายโซ่เดียวกันหรือไม่