ฉันได้กำหนดค่า nginx ให้เป็นเว็บเซิร์ฟเวอร์ที่มองเห็นจากภายนอกซึ่งพูดถึงแบ็กเอนด์ผ่าน HTTP
สถานการณ์ที่ฉันต้องการบรรลุคือ:
- ไคลเอนต์ทำการร้องขอ HTTP ไปยัง nginx ซึ่งเปลี่ยนเส้นทางไปยัง URL เดียวกัน แต่ใช้ผ่าน HTTPS
- พร็อกซี nginx ร้องขอผ่าน HTTP ไปยังส่วนหลัง
- nginx รับการตอบสนองจากแบ็กเอนด์ผ่าน HTTP
- nginx ส่งผ่านสิ่งนี้กลับไปยังลูกค้าผ่าน HTTPS
การกำหนดค่าปัจจุบันของฉัน (ที่แบ็คเอนด์ถูกกำหนดค่าอย่างถูกต้อง) คือ:
เซิร์ฟเวอร์ { ฟัง 80; server_name localhost; ตำแหน่ง ~. * { proxy_pass http: // backend; proxy_redirect http: // backend https: // $ host; proxy_set_header โฮสต์ $ host; } }
ปัญหาของฉันคือการตอบสนองต่อลูกค้า (ขั้นตอนที่ 4) ส่งผ่าน HTTP ไม่ใช่ HTTPS ความคิดใด ๆ