ใช่แล้ว nginx กำลังรวมส่วนหัวที่มีชื่อเหมือนกัน แต่ก็เป็นไปตาม HTTP spec ส่วนดู 4.2
ส่วนหัว:
Access-Control-Allow-Origin: http://dev.anuary.com, https://dev.anuary.com
ตามข้อมูลจำเพาะ HTTP / 1.1 เทียบเท่ากับหน้าที่:
Access-Control-Allow-Origin: http://dev.anuary.com
Access-Control-Allow-Origin: https://dev.anuary.com
หากคุณมีระบบหรือแอพพลิเคชั่นที่สามารถอ่านรูปแบบหนึ่งได้และไม่ใช่รูปแบบอื่นแสดงว่าเป็นปัญหา nginx ทำถูกต้องแล้ว
แก้ไข :
เอกสาร Mozillaระบุว่ามีเพียงสามารถเป็นหนึ่งในAccess-Control-Allow-Origin
หัว
การจัดรูปแบบของมัน ( ดูที่นี่ ) ควรเป็นรายการที่คั่นด้วยช่องว่างของต้นกำเนิด:
add_header Access-Control-Allow-Origin "http://dev.anuary.com https://dev.anuary.com";
แต่จริงๆแล้วคุณควรจะสะท้อนOrigin
ส่วนหัวที่ได้รับจากลูกค้าแทนที่จะสร้างหนึ่งจากสีน้ำเงิน นี่น่าจะเหมาะสมกว่า:
if ($http_origin ~* "^https?://dev\.anuary\.com$" ) {
add_header Access-Control-Allow-Origin $http_origin;
}