ฉันทำการเปลี่ยนแปลงในไฟล์ ngnix เพื่อให้ใช้งานได้กับโฟลเดอร์ angular dist ที่แปลเป็นภาษาท้องถิ่นด้วยหลายภาษา แอปพลิเคชันฝั่งไคลเอ็นต์ทำงานอย่างถูกต้องกับการกำหนดเส้นทาง URL ฯลฯ แต่โหนด apis สำหรับการตรวจสอบสิทธิ์กลับแสดงข้อผิดพลาด "405 method not allow" ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชม วิธีแก้ไขที่ฉันได้ลอง
error_page 405 =200 $uri; - ให้รหัสสถานะ 200 พร้อมการตอบกลับที่ว่างเปล่า
ลองตั้งค่า orgin * แต่ก็ยังใช้งานไม่ได้
ด้านล่างนี้คือการกำหนดค่า nginx ของฉัน
รูท /var/www/web/dist;
# สำรองเป็นภาษาเริ่มต้นหากไม่มีการตั้งค่ากำหนดโดยเบราว์เซอร์
ถ้า ($accept_language ~ "^$") {
ตั้ง $accept_language "ดา";
}
# เปลี่ยนเส้นทาง "/" ไปยังแอปพลิเคชันเชิงมุมในภาษาที่ต้องการของเบราว์เซอร์
เขียนใหม่ ^/$ /$accept_language ถาวร;
# ทุกอย่างภายใต้แอปพลิเคชัน Angular จะถูกเปลี่ยนเส้นทางไปยัง Angular เสมอใน
#ภาษาที่ถูกต้อง
ตำแหน่ง ~ ^/(da|en) {
try_files $uri /$1/index.html?$args;
}
ตำแหน่ง /nodeApi/ {
proxy_http_version 1.1;
proxy_set_header อัพเกรด $http_upgrade;
proxy_set_header การเชื่อมต่อ 'อัปเกรด';
proxy_set_header โฮสต์ $host;
proxy_set_header ประเภทเนื้อหา "application/json";
proxy_cache_bypass $http_upgrade;
proxy_pass http://localhost:4444/nodeApi;
}