nginx跨域配置详情 linux安装nginx详细教程

概述
当出现403跨域错误的时候 No ‘
Access-Control-Allow-Origin’ header is present on the requested resource , 需要给Nginx服务器配置响应的header参数 , 下面一起来看看吧!

nginx跨域配置详情 linux安装nginx详细教程

文章插图
nginx跨域配置详情 linux安装nginx详细教程

文章插图
nginx跨域配置详情 linux安装nginx详细教程

文章插图
nginx跨域配置详情 linux安装nginx详细教程

文章插图
跨域资源共享(CORS)标准新增了一组 HTTP 首部字段 , 允许服务器声明哪些源站有权限访问哪些资源 。另外 , 规范要求 , 对那些可能对服务器数据产生副作用的HTTP 请求方法(特别是 GET 以外的 HTTP 请求 , 或者搭配某些 MIME 类型的 POST 请求) , 浏览器必须首先使用 OPTIONS 方法发起一个预检请求(preflight request) , 从而获知服务端是否允许该跨域请求 。服务器确认允许之后 , 才发起实际的 HTTP 请求 。在预检请求的返回中 , 服务器端也可以通知客户端 , 是否需要携带身份凭证(包括 Cookies 和 HTTP 认证相关数据) 。
其实Content-Type字段的类型为application/json的请求就是上面所说的搭配某些 MIME 类型的 POST 请求,CORS规定 , Content-Type不属于以下MIME类型的 , 都属于预检请求:
application/x-www-form-urlencodedmultipart/form-datatext/plain
所以 application/json的请求 会在正式通信之前 , 增加一次”预检”请求 , 这次”预检”请求会带上头部信息
Access-Control-Request-Headers: Content-Type:
OPTIONS /api/test HTTP/1.1Origin: http://foo.exampleAccess-Control-Request-Method: POSTAccess-Control-Request-Headers: Content-Type... 服务器回应时 , 返回的头部信息如果不包含
Access-Control-Allow-Headers: Content-Type则表示不接受非默认的的Content-Type 。即出现以下错误:
【nginx跨域配置详情 linux安装nginx详细教程】Request header field Content-Type is not allowed by Access-Control-Allow-Headers in preflight response.