网站首页 文章专栏 The 'Access-Control-Allow-Origin' header contains

The 'Access-Control-Allow-Origin' header contains

编辑时间:2018-05-11 10:39:25 作者:苹果 浏览量:445





    前言:开发中经常看到控制台报异常:The 'Access-Control-Allow-Origin' header contains multiple values '*, *', but only one is allowed. 这是跨域请求限制引起的


The 'Access-Control-Allow-Origin' header contains multiple values '*, *', but only one is allowed.

出现这个问题是因为跨域选项设置多了,查看下服务端和nginx端是不是重复配置了Access-Control-Allow-Origin:*


1.检查代码中查看是不是配置:

header("Access-Control-Allow-Origin: *");

2.检查nginx配置有没有配置:

add_header Access-Control-Allow-Origin *;

这两个配置,只要保留一个即可。



相对的还有一个类似问题

XMLHttpRequestcannot load http://zb.example.com/info.json?ak=E485214565fetch087acde70&level=19&tilex=431625&tiley=198699. The 'Access-Control-Allow-Origin' header contains multiple values'*, *', but only one is allowed. Origin 'http://localhost:63342' is therefore notallowed access.

这是因为请求的域名不允许其他外来域名访问


1.可以在代码中相应方法位置添加配置:

header("Access-Control-Allow-Origin: *"); //运行所有域名请求

或者header("Access-Control-Allow-Origin: 请求的域名) //只允许这个域名请求

2.也可以在nginx中配置:

add_header Access-Control-Allow-Origin *; 这种不太提倡,因为等于所有的接口和方法都会受外来域名访问



    出自:何冰华个人网站

    地址:http://www.hebinghua.com/

    转载请注明出处


来说两句吧
最新评论