最简单,但最不安全的配置
add_header Access-Control-Allow-Origin *; add_header Access-Control-Allow-Methods *; add_header Access-Control-Allow-Headers *;
使用 always 参数
在某些情况下,Nginx 没有返回我们设置的头部。比如在 404 时,就不会返回我们自定义的头部。
这是因为只有当响应码为 200, 201 (1.3.10), 204, 206, 301, 302, 303, 304, 307 (1.1.16, 1.0.13), or 308 (1.13.0) 时才会响应特定头部。
如果要解决这个问题,需要使用 always 关键字:
add_header Access-Control-Allow-Origin * always; add_header Access-Control-Allow-Methods * always; add_header Access-Control-Allow-Headers * always;
参考文献
WikiNotes/允许跨域访问
Module ngx_http_headers_module/add_header
Allowing cross origin requests (CORS) on Nginx for 404 responses
来源:oschina
链接:https://my.oschina.net/u/4948974/blog/4919615