nginx配置允许跨域问题


nginx配置允许跨域

 

 

add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
add_header Access-Control-Allow-Headers 'token,DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';

 

如果加上了配置还不可以,就确认下,请求方法和headers是否在条件中,没有的话就在Methods或者Headers添加。(比如:遇到过一次,不允许token跨域,就在Headers中添加了token)

 

还有一种情况配置了跨域还是不生效,我之前刚好测试的时候,随便测了个本地绑host的地址,懒得没弄文件,就是个404的页面。这就出问题了。。。。。。。。。。怎么配置都是无法跨域。鼓捣了很久,终于查到了原因

当状态码是 200,201,204,206,301,302,303,304,307 时nginx会添加header,而 401、404、500,都没有添加header。由于 Access-Control-Allow-Origin * 选项未生效,导致返回的response header里面没有允许跨域请求的选项,怎么解决呢:

add_header Access-Control-Allow-Origin *;  后面添加always,变为:
add_header Access-Control-Allow-Origin * always;


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM