出于安全考虑, 源服务 nginx 配置http_origin变量,目的允许匹配 https://(.*).exp.com 所有的二级域名访问.
但是出现响应头 Access-Control-Allow-Origin 和 请求头 Origin 返回不一致,强制刷新多次才会正常,感觉像是缓存的问题.

has been blocked by CORS policy: The 'Access-Control-Allow-Origin' header has a value ****** that is not equal to the supplied origin.
源服务的nginx(版本:1.14.0)配置如下:
set $cors_origin "";
if ($http_origin ~ "https://(.*).exp.com") {
set $cors_origin $http_origin;
}
add_header Access-Control-Allow-Origin $cors_origin;
add_header Access-Control-Allow-Methods GET;
看到你启用了
ETag
和Last-Modified
,你这个站点是否使用了CDN 呢? 你的描述,应该是和缓存有关系。你要不要针对 RequestMethod 为
OPTIONS
的请求,返回一个Cache-Control: no-cache
,并且不返回ETag
和Last-Modified