ฉันพยายามทำให้เซสชันของฉันทำงานข้ามโดเมนย่อย ซึ่งฉันค่อนข้างแน่ใจว่าได้ทำงานในวันจันทร์ แต่หลังจากเพิ่มโค้ดในวันอังคาร มันก็ใช้งานไม่ได้ในวันพุธ! ฉันใช้รหัส ini_set("session.cookie_domain", $domain);
โดยที่ $domain = .example.com
ขณะนี้หน้าหลักของเว็บไซต์ของฉันอยู่ที่ test.example.com และฉันเข้าถึงหน้าเข้าสู่ระบบผ่าน test.example.com/login
เมื่อฉันป้อนที่อยู่นี้ URL ในแถบที่อยู่จะเปลี่ยนเป็น http://www.test.example.com/login
โดยอัตโนมัติ และนี่คือสาเหตุของปัญหา เซสชันนี้สร้างขึ้นสำหรับ www.test.example.com
แต่ลิงก์ส่วนใหญ่บนไซต์มุ่งตรงไปที่ test.example.com/<sub folder>
สิ่งเดียวที่ฉันคิดได้ว่าอาจต้องทิ้งมันไปก็คือวิธีจัดการกับเซสชันต่างๆ ในทุกเพจ เซสชั่นจะเริ่มต้นขึ้น ขั้นแรกให้ตั้งค่า ini_set("session.cookie_domain", $domain);
จากนั้นเซสชันจะเริ่มต้นขึ้น ต่อไปฉันจะตรวจสอบว่าเซสชั่นหมดอายุแล้วหรือไม่ หากเซสชันหมดอายุ เซสชันปัจจุบันจะถูกทำลายและไม่ได้ตั้งค่า เซสชันใหม่จะถูกสร้างขึ้น ที่เหลือก็แค่ตั้งค่าข้อมูลผู้ใช้
สิ่งเดียวที่ฉันได้เพิ่มเมื่อเร็วๆ นี้ก็คือตัวตรวจสอบการหมดอายุของเซสชัน ฉันพยายามเลี่ยงมันแล้ว แต่มันก็ไม่ได้เปลี่ยนแปลงอะไรเลย
ความช่วยเหลือใด ๆ ที่ชื่นชมอย่างมาก ฉันสามารถโพสต์โค้ดได้ถ้ามันทำให้ง่ายขึ้น
ไมค์