ดังนั้นฉันจึงตั้งค่าเส้นทางเสมือนเมื่อชี้ไปที่แอป node.js ใน nginx conf ของฉัน ส่วนที่เกี่ยวข้องมีลักษณะดังนี้:
location /app {
rewrite /app/(.*) /$1 break;
proxy_pass http://localhost:3000;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
ใช้งานได้ดียกเว้นว่าเมื่อแอป node.js ของฉัน (แอปด่วน) เรียกการเปลี่ยนเส้นทาง
ตัวอย่างเช่นกล่อง dev กำลังรัน nginx บนพอร์ต 8080 และ URL ของรูทของแอปโหนดดูเหมือนว่า:
http: // localhost: 8080 / แอป
เมื่อฉันเรียกการเปลี่ยนเส้นทางไปยัง '/ app' จากโหนดการเปลี่ยนเส้นทางที่แท้จริงจะไปที่: