首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果服务返回错误,则Nginx服务对跨域请求失败。

如果服务返回错误,则Nginx服务对跨域请求失败。
EN

Server Fault用户
提问于 2012-09-24 06:15:52
回答 3查看 10.9K关注 0票数 6

我是一个跨域的请求,在我的网络应用程序。

我已经在Nginx上设置了CORS头。一切正常,除非服务返回一个错误,比如404、400、500等,而不是接收错误代码,服务失败了,出现了一个错误,上面写着Origin *********** is not allowed by Access-Control-Allow-Origin

知道为什么会发生这种事吗?

这就是nginx设置的样子;

代码语言:javascript
复制
location /api {
    add_header Access-Control-Allow-Origin *;
}
EN

回答 3

Server Fault用户

回答已采纳

发布于 2012-09-24 23:49:27

不幸的是,除了200、204、301、302或304之外,add_header将无法使用状态代码。你可以找到这个在这里的文档中

你可以使用这个插件来做你想做的事情:

https://www.nginx.com/resources/wiki/modules/headers_更多/

票数 3
EN

Server Fault用户

发布于 2018-05-07 04:06:55

您可以使用起始于nginx1.7.5的始终指令(* Feature:"add_header“指令的”始终“参数)。

代码语言:javascript
复制
add_header 'Access-Control-Allow-Origin' '*' always;
票数 7
EN

Server Fault用户

发布于 2015-06-24 15:57:55

我可以确认标头_更多模块(在这个答案中提到)可以用于为所有HTTP响应添加报头,而不管状态代码如何。

注意:您可能需要在https://github.com/openresty/headers-more-nginx-module/issues/24上使用Nginx构建此模块的解决方案,但是一旦编译到Windows上,它就可以正常工作了。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/431274

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档