博客
关于我
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主从复制几个重要的启动选项
    查看>>
    MySQL主从复制及排错
    查看>>
    mysql主从复制及故障修复
    查看>>
    MySQL主从复制的原理和实践操作
    查看>>
    webpack loader配置全流程详解
    查看>>
    mysql主从复制,读写分离,半同步复制实现
    查看>>
    MySQL主从失败 错误Got fatal error 1236解决方法
    查看>>
    MySQL主从架构与读写分离实战
    查看>>
    MySQL主从篇:死磕主从复制中数据同步原理与优化
    查看>>
    mysql主从配置
    查看>>
    MySQL之2003-Can‘t connect to MySQL server on ‘localhost‘(10038)的解决办法
    查看>>
    MySQL之CRUD
    查看>>
    MySQL之DML
    查看>>
    Mysql之IN 和 Exists 用法
    查看>>
    MYSQL之REPLACE INTO和INSERT … ON DUPLICATE KEY UPDATE用法
    查看>>
    MySQL之SQL语句优化步骤
    查看>>
    MYSQL之union和order by分析([Err] 1221 - Incorrect usage of UNION and ORDER BY)
    查看>>
    Mysql之主从复制
    查看>>
    MySQL之函数
    查看>>
    mysql之分组查询GROUP BY,HAVING
    查看>>