博客
关于我
nginx 配置header
阅读量:726 次
发布时间:2019-03-21

本文共 969 字,大约阅读时间需要 3 分钟。

当在img标签上设置crossOrigin="Anonymous"时,可能会遇到CORS政策错误。这是因为浏览器在处理这种跨域请求时,无法找到服务器返回的Access-Control-Allow-Origin头来允许这种情况。以下是详细的解决方案:

  • 理解CORS配置

    通常,CORS策略包括以下设置:

    • Access-Control-Allow-Origin: 指定允许的域名。
    • Access-Control-Allow-Methods: 允许的方法,如GETPOST
    • Access-Control-Allow-Headers: 允许的请求头。
  • 检查Nginx配置

    肯定在服务器(例如Nginx)上启用了CORS。按照以下步骤操作:

    • 打开Nginx配置文件,进入location / { ... }部分。
    • 添加三行配置:
      add_header Access-Control-Allow-Origin *;add_header Access-Control-Allow-Methods GET, POST, OPTIONS;add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
    • 保存并重启Nginx服务。
  • 调整跨域策略

    • 在需要跨域的img标签中保留crossOrigin="Anonymous",但请确保Nginx配置中允许这种模式。
    • 或者,设置crossorigin属性为use-neighbor以允许共享某些资源。
  • 客户端CORS处理

    在JavaScript中使用fetchXMLHttpRequest时,可以指定-origin选项,并使用CORS库进行错误处理。

  • 测试与验证

    使用跨域测试工具,如earing.io,检查是否返回正确的CORS头。

    • 打开浏览器的开发者工具,查看Network区域,检查请求和响应头。
    • 确认Access-Control-Allow-Origin头为*或指定允许的域名。
  • 通过以上步骤,CORS配置问题应该得到解决,确保跨域请求流畅进行。

    转载地址:http://sxfgz.baihongyu.com/

    你可能感兴趣的文章
    mysql 修改默认字符集为utf8
    查看>>
    Mysql 共享锁
    查看>>
    MySQL 内核深度优化
    查看>>
    mysql 内连接、自然连接、外连接的区别
    查看>>
    mysql 写入慢优化
    查看>>
    mysql 分组统计SQL语句
    查看>>
    Mysql 分页
    查看>>
    Mysql 分页语句 Limit原理
    查看>>
    MySQL 创建新用户及授予权限的完整流程
    查看>>
    mysql 创建表,不能包含关键字values 以及 表id自增问题
    查看>>
    mysql 删除日志文件详解
    查看>>
    mysql 判断表字段是否存在,然后修改
    查看>>
    mysql 协议的退出命令包及解析
    查看>>
    mysql 取表中分组之后最新一条数据 分组最新数据 分组取最新数据 分组数据 获取每个分类的最新数据
    查看>>
    mysql 多个表关联查询查询时间长的问题
    查看>>
    mySQL 多个表求多个count
    查看>>
    mysql 多字段删除重复数据,保留最小id数据
    查看>>
    MySQL 多表联合查询:UNION 和 JOIN 分析
    查看>>
    MySQL 大数据量快速插入方法和语句优化
    查看>>
    mysql 如何给SQL添加索引
    查看>>