หน้าข้อผิดพลาดแบบกำหนดเอง
ระหว่างขั้นตอนการลงชื่อเข้าใช้ ผู้ใช้ปลายทางอาจพบหน้าข้อผิดพลาดเริ่มต้นในบางครั้ง สถานการณ์ที่พบบ่อย ได้แก่:
- เซสชันหมดอายุ: ผู้ใช้ใช้เวลานานเกินไปในการลงชื่อเข้าใช้ ทำให้เซสชันหมดเวลา
- เข้าชม URL ลงชื่อเข้าใช้โดยตรง: ผู้ใช้เปิดบุ๊กมาร์กหรือแชร์ URL
/sign-in(ข้ามปุ่มลงชื่อเข้าใช้ปกติ) - เส้นทางที่ไม่มีอยู่จริง: ผู้ใช้นำทางไปยัง path ที่ไม่มีอยู่ใน flow การยืนยันตัวตนของคุณ
- ปัญหาการเรียกกลับการลงชื่อเข้าใช้โซเชียล: ไม่พบเซสชันโซเชียลในหน้าการเรียกกลับโซเชียล
- ลิงก์เวทมนตร์ไม่ถูกต้อง: โทเค็นใช้ครั้งเดียว (magic link) สำหรับเชิญองค์กรหรือการลงชื่อเข้าใช้แบบไม่ใช้รหัสผ่านหมดอายุหรือถูกใช้ไปแล้ว
โดยปกติ Logto จะแสดงหน้าข้อผิดพลาดทั่วไป (เช่น หน้า 404 “unknown session”) ในสถานการณ์เหล่านี้ เพื่อปรับปรุงประสบการณ์ของผู้ใช้เมื่อพบข้อผิดพลาด คุณต้องตั้งค่าพารามิเตอร์ต่อไปนี้:
- Unknown session redirect URL: URL สำรองสำหรับเปลี่ยนเส้นทางผู้ใช้เมื่อไม่พบเซสชัน
- อีเมลฝ่ายสนับสนุน & เว็บไซต์ฝ่ายสนับสนุน: ข้อมูลติดต่อที่แสดงบนหน้าข้อผิดพลาด
Unknown session redirect URL
Logto ใช้ flow OpenID Connect (OIDC) สำหรับการยืนยันตัวตน โดย flow OIDC ที่ถูกต้องจะต้องเริ่มต้นโดยแอปพลิเคชันของคุณ เช่น การคลิกปุ่ม “Sign in” ของแอปจะส่งคำขอ OIDC authorization ไปยัง Logto ซึ่งจะตั้งค่าเซสชันที่ปลอดภัย (cookie)
อย่างไรก็ตาม หากผู้ใช้เข้าถึง /sign-in โดยตรง ข้ามการตรวจสอบเซสชัน จะทำให้เกิดข้อผิดพลาด 404 “unknown session” เมื่อ:
- เซสชันหมดอายุ
- ผู้ใช้บุ๊กมาร์ก/แชร์ลิงก์ลงชื่อเข้าใช้
- ขาด context การอนุญาต
เพื่อจัดการกรณีนี้ Logto ได้เพิ่มการตั้งค่า unknownSessionRedirectUrl เมื่อคุณตั้งค่า URL นี้ Logto จะเปลี่ยนเส้นทางผู้ใช้ไปยังหน้าที่กำหนดเพื่อเริ่ม flow การลงชื่อเข้าใช้ใหม่โดยอัตโนมัติ แทนที่จะแสดงข้อผิดพลาด 404
วิธีตั้งค่า:
- ไปที่ Console > Sign-in & account > Sign-up and sign-in > Advanced settings
- ตั้งค่า "Unknown session redirect URL" เป็นที่อยู่บริการหรือหน้าแรกของผลิตภัณฑ์คุณ เช่น Logto Cloud จะตั้งค่าเป็น "https://cloud.logto.io"
ข้อมูลติดต่อฝ่ายสนับสนุน
หากเกิดข้อผิดพลาดอื่น (เช่น เข้าชม path ที่ไม่ถูกต้อง, การเรียกกลับโซเชียลที่ไม่มีเซสชัน, หรือเปิด magic link ที่หมดอายุ) Logto จะแสดงหน้าข้อผิดพลาดเริ่มต้น เพื่อช่วยเหลือผู้ใช้ คุณสามารถแสดงข้อมูลติดต่อบนหน้าข้อผิดพลาดเหล่านี้
วิธีตั้งค่า:
- ไปที่ Console > Sign-in & account > Content > Support
- กำหนดที่อยู่อีเมลฝ่ายสนับสนุนของคุณ
- กำหนด URL เว็บไซต์ฝ่ายสนับสนุนหรือเว็บไซต์ทางการของคุณ
สิ่งนี้จะช่วยให้แม้เกิดปัญหา ผู้ใช้ก็ยังมีช่องทางขอความช่วยเหลือที่ชัดเจน