ฉันมีการตั้งค่าพร็อกซีย้อนกลับสำหรับการเข้าถึงแอปพลิเคชันบุคคลที่สามที่อยู่ภายในอินทราเน็ตจากอินเทอร์เน็ต สมมติว่าแอปพลิเคชันนี้อยู่ใน URL:
https://internalserver:8080/
(เข้าถึงได้จากอินทราเน็ตเท่านั้น)
และพร็อกซีเปิดอยู่:
https://proxyserver/
(เข้าถึงได้จากทุกที่ในโลก)
พรอกซีได้รับการจัดการโดย nginx และใช้งานได้ เมื่อผู้ใช้เข้าถึงhttps://proxyserver/
พวกเขาได้รับเนื้อหาของ app https://internalserver:8080/
ที่
ปัญหาคือว่าการประยุกต์ใช้คือการเขียน URL ที่สมบูรณ์ในการตอบสนองของ HTML ดังนั้นเมื่อผู้ใช้คลิกลิงก์ไปยังหน้าใหม่เบราว์เซอร์ที่มีการพยายามที่จะหาหน้าเว็บที่มีชื่อภายในของตนเช่น
แทนhttps://internalserver:8080/somepage
https://proxyserver/somepage
ฉันรู้ว่านี่เป็นข้อบกพร่องของโปรแกรม แต่ฉันไม่สามารถแก้ไขโปรแกรมได้
ฉันสามารถสกัดกั้นการตอบสนองแก้ไข URL และส่ง (แก้ไข) ไปยังไคลเอนต์สุดท้ายด้วย nginx ได้หรือไม่ หรืออาจจะด้วยเครื่องมืออื่น?
แก้ไข:ฉันเห็นคำถามนี้มาก่อน แต่กรณีของฉันเฉพาะเจาะจงมากขึ้นคำถามที่ยกมาขอให้แก้ไขโดยทั่วไป ในกรณีนั้นโปรแกรม ad-cgi ที่รวดเร็วเป็นทางออกที่ดีที่สุดสิ่งที่ฉันต้องการคือโซลูชันที่เฉพาะเจาะจงมากขึ้นสำหรับ (ฉันคิดว่า) เป็นสถานการณ์ที่พบบ่อยมากขึ้น ในขณะที่โปรแกรม cgi ที่รวดเร็วสามารถทำงานได้ฉันกำลังมองหาสิ่งที่ง่ายที่สุดและแข็งแกร่งขึ้นและอาจพิสูจน์ได้ในโลกแห่งความเป็นจริงทางออกสำหรับสถานการณ์นี้