พิจารณาเซิร์ฟเวอร์แบ็กเอนด์สองแห่ง:
https://server1.example.com
https://server2.example.com
เมื่อเข้าถึงเซิร์ฟเวอร์เหล่านี้โดยตรงเซิร์ฟเวอร์จะมีความเป็นอิสระ localStorage
วัตถุตั้งแต่ต้นกำเนิดของพวกเขาแตกต่างกัน ในกรณีนี้ชื่อโฮสต์ต่างกัน
เมื่อฉันวางเซิร์ฟเวอร์เหล่านี้ไว้ข้างหลังพร็อกซีย้อนกลับจะถูกเข้าถึงดังต่อไปนี้:
https://proxy.example.com/server1
https://proxy.example.com/server2
เพื่อให้ภาพซับซ้อนขึ้นเล็กน้อยฉันมีหน้าส่วนหน้าบน
proxy
:https://proxy.example.com
หน้านี้แสดงรายการเซิร์ฟเวอร์เป็นฮอตลิงค์โดยใช้ HTML คล้ายกับ:
<a href="https://proxy.example.com/server1/" target="_blank">Server1</a> <a href="https://proxy.example.com/server2/" target="_blank">Server2</a>
ตอนนี้แต่ละเซิร์ฟเวอร์ proxy
, server1
และ server2
ทั้งหมดผ่านไป same-origin
ทดสอบเนื่องจากพวกเขาแต่ละคนมี origin=https://proxy.example.com:443
. ดังนั้น localStorage
วัตถุถูกแชร์ในหมู่พวกเขาและการแบ่งปันนี้ทำให้แอปพลิเคชันสับสน server1
และ server2
.
มีวิธีปิดการแชร์หรือไม่ localStorage
ระหว่าง proxy
, server1
และ server2
ในการกำหนดค่านี้หรือไม่?
หากไม่มีมีวิธีการใน Javascript ที่จะปิดการใช้งานการแชร์ระหว่างเอนทิตีเหล่านี้หรือไม่
localStorage
คีย์ด้วยคำสั่ง reverse-proxy replace ดังนั้นตอนนี้คีย์จึงใช้เฉพาะเซิร์ฟเวอร์ เช่น. กุญแจที่เรียกว่าfoo
ถูกแทนที่โดย reverse-proxy ที่จะกลายเป็นserver1_foo
และserver2_foo
. ปัญหานี้ได้รับการแก้ไข