在nginx配置cors请求的headers头部信息

cors就是跨域请求,我们在开发和nginx配置经常会遇到这个。

Winter2020/03/24 20:54:17

首先,如果设置了header信息包含cookie:Access-Control-Allow-Credentials:true,那么
Access-Control-Allow-Origin不可以为 ‘ * ’,因为 “ * ” 会和Access-Control-Allow-Credentials冲突,需要配置指定的地址,如果后端设置Access-Control-Allow-Origin : ' * ' 会有报错。

按照以下这几个变量,可以解决问题

允许哪个域名来访问资源
add_header 'Access-Control-Allow-Origin' "$http_origin";

请求的返回内容里包含cookies
add_header 'Access-Control-Allow-Credentials' 'true';

允许请求的method
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';