当站点未包含 Access-Control-Allow-Origin 请求头时,根据 CORS 将不被允许访问,这个问题出现在独立静态资源站被其它域的网站引用时发生,尤其是发生在前后端部署的站点,在打开 Chrome 开发者工具进行调试时出现错误:from origin has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource.
配置以下Nginx代码以解决。
# 允许所有来源访问
add_header 'Access-Control-Allow-Origin' '*';
# 允许的请求方法
add_header 'Access-Control-Allow-Methods' 'GET, POST, PUT, DELETE, OPTIONS';
# 允许的请求头
add_header 'Access-Control-Allow-Headers' 'Content-Type, Authorization';
# 允许预检请求缓存时间
add_header 'Access-Control-Max-Age' '1728000'; # 20 天