CORS 配置生成器

根据允许域名、方法、Header、Cookie 凭证和预检缓存设置生成 CORS 配置片段。

CORS 策略

摘要

策略受限 Origin 策略

部署前需要检查 1 条警告。

Origin 数0
方法数3
凭证模式未启用
平台Nginx

注意事项

  • 不要把通配 Origin 和凭证一起使用,浏览器会拒绝这种组合。
  • 从白名单反射请求 Origin 时,建议加上 Vary: Origin。
  • 生成片段适合作为起点,部署前仍需在真实环境测试预检请求。

警告

  • 没有配置允许的 Origin。请添加 Origin,或启用允许全部 Origin。

生成的配置

为 Nginx 生成
map $http_origin $cors_origin {
    default "";
}

location / {
    add_header 'Access-Control-Allow-Origin' '$cors_origin' always;
    add_header 'Access-Control-Expose-Headers' 'X-Request-Id' always;
    add_header 'Vary' 'Origin' always;
    if ($request_method = 'OPTIONS') {
        add_header 'Access-Control-Allow-Origin' '$cors_origin' always;
        add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS' always;
        add_header 'Access-Control-Allow-Headers' 'Content-Type, Authorization' always;
        add_header 'Access-Control-Max-Age' '86400' always;
        add_header 'Vary' 'Origin' always;
        return 204;
    }
    proxy_pass http://upstream_app;
}

Header 预览

Header
Access-Control-Allow-Origin$http_origin
Access-Control-Allow-MethodsGET, POST, OPTIONS
Access-Control-Allow-HeadersContent-Type, Authorization
Access-Control-Max-Age86400
Access-Control-Expose-HeadersX-Request-Id
VaryOrigin