5
Nginx reverse proxy + URL เขียนใหม่
Nginx ทำงานบนพอร์ต 80 และฉันใช้เพื่อย้อนกลับ URL พร็อกซีด้วยพา ธ/fooไปยังพอร์ต3200ด้วยวิธีนี้: location /foo { proxy_pass http://localhost:3200; proxy_redirect off; proxy_set_header Host $host; } ใช้งานได้ดี แต่ฉันมีแอปพลิเคชันบนพอร์ต3200ซึ่งฉันไม่ต้องการ/fooให้ส่งเริ่มต้นไปที่ นั่นคือ - เมื่อฉันเข้าถึงhttp://localhost/foo/barฉันต้องการเพียง/barเป็นเส้นทางตามที่ได้รับจากแอพ ดังนั้นฉันพยายามเพิ่มบรรทัดนี้ในบล็อกตำแหน่งที่ตั้งด้านบน: rewrite ^(.*)foo(.*)$ http://localhost:3200/$2 permanent; สิ่งนี้ทำให้เกิดการเปลี่ยนเส้นทาง 302 (เปลี่ยนเป็น URL) แต่ฉันต้องการ 301 ฉันควรทำอย่างไร