我正在用测试nginx
中的Access-Control-Allow-Origin
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
知道是什么原因造成的吗?我预计请求会失败。
谢谢。
-
服务器(像nginx这样的web服务器)与访问控制allow-origin无关(除了设置或取消设置标志)。允许跨域Ajax(XhttpRequest)调用是浏览器的一个方向。
-
因此,当您将访问控制设置为允许origin访问google.com时,您是在告诉bowser允许Ajax从您的网站页面调用google.com。
有关更多详细信息,请参阅-HTTP访问控制。