我正在Access-Control-Allow-Origin
中测试nginx
http响应标头安全策略:
add_header Access-Control-Allow-Origin "https://google.com";
我希望我的域上的请求失败,但是它们正在运行,返回200状态代码。我确认确实设置了Access-Control-Allow-Origin
响应标头:
Access-Control-Allow-Origin:https://google.com
Cache-Control:no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Connection:keep-alive
Content-Encoding:gzip
Content-Type:text/html
Date:Tue, 05 Feb 2013 20:22:17 GMT
Expires:Thu, 19 Nov 1981 08:52:00 GMT
Pragma:no-cache
Server:nginx
Strict-Transport-Security:max-age=31556926
Transfer-Encoding:chunked
X-Frame-Options:DENY
请求标题显示正确的来源:
Origin:https://mydomainhere.com
知道可能导致这种情况的原因是什么?我希望请求失败。
感谢。
答案 0 :(得分:0)
服务器(像nginx这样的webserver)与access-control-allow-origin无关(除了设置或取消设置标志之外)。这是浏览器允许跨域Ajax(XhttpRequest)调用的方向。
因此,当您将access-control-allow-origin设置为google.com时,您告诉bowser允许从您网站的页面调用google.com进行Ajax调用。
通过 - HTTP access control了解更多详情。