3
เหตุใด sub_filter จึงไม่ทำงานเมื่อใช้ร่วมกับ proxy_pass
รับการกำหนดค่าต่อไปนี้ของ nginx: server { listen 80; server_name apilocal; sub_filter "apiupstream/api" "apilocal"; sub_filter_once off; location /people/ { proxy_pass http://apiupstream/api/people/; proxy_set_header Accept-Encoding ""; } } Sub_filter ไม่ตอบสนองส่วนต่าง ๆ ของการตอบสนองอย่างเหมาะสม เมื่อฉันลบ proxy_pass ออกจากการกำหนดค่ามันทำงานได้อย่างถูกต้อง หลายคนที่มีปัญหานี้ท้ายมีการบีบอัด gzip จากเซิร์ฟเวอร์ upstream ฉันตรวจสอบแล้วว่าเซิร์ฟเวอร์อัปสตรีมของฉันไม่ได้เปิดการเข้ารหัส gzip ไว้สำหรับการตอบกลับ แต่ในกรณีที่ฉันใช้ proxy_set_header ด้านบนเพื่อไม่ยอมรับ gzip อาจมีอย่างอื่นที่ฉันหายไป?