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