zoukankan      html  css  js  c++  java
  • Json跨域登录问题的之Access-Control-Allow-Origin 站点跨域请求的问题

    跨域调用json问题

    闲暇之时,做了一个博客站点,站点发布网络之后程序功能完成,最后发现了一个跨域的问题,比如我使用abc.com打开系统,一切正常,后台没有任何文件请求报错问题,然后我又使用了www.abc.com再试一下,结果发现一些字体文件或引用外部css文件等请求失败问题

    Font from origin 'http://lovefeel.top' has been blocked from loading by Cross-Origin Resource Sharing policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://www.lovefeel.top' is therefore not allowed access.
    

    浏览器调试报错如下:

    IIS下的解决方案

    # 在IIS添加如下标头即可
    Access-Control-Allow-Headers:Content-Type, api_key, Authorization
    Access-Control-Allow-Origin:*
    


    打开IIS,找到“HTTP响应标头”点进去,

    在右侧可以看到添加,然后添加如下标头即可


    推荐两个规则同时写,有的网友反馈只写Access-Control-Allow-Origin:* 就解决了,文件请求正常。

    Nginx服务器

    通过Nginx模块HttpHeadersModule来添加Access-Control-Allow-Origin允许的地址。

    在Nginx的conf目录下修改nginx.conf,添加以下代码

    location ~* .(eot|ttf|woff|svg|otf)$ {
         add_header Access-Control-Allow-Origin *;
    }
    
    // eot|ttf|woff|svg|otf,表示请求后缀类型,也可以直接写如下代码
    
    location / {  
      add_header Access-Control-Allow-Origin *;  
    }  
    

    Apache服务器

    若服务器为Apache,则可以按照如下配置:

    <IfModule mod_setenvif.c>  
        <IfModule mod_headers.c>  
            <FilesMatch ".(cur|gif|ico|jpe?g|png|svgz?|webp)$">  
                SetEnvIf Origin ":" IS_CORS  
                Header set Access-Control-Allow-Origin "*" env=IS_CORS  
            </FilesMatch>  
        </IfModule>  
    </IfModule>  
    

    参考文献:http://www.bubuko.com/infodetail-1022595.html

    http://www.mamicode.com/info-detail-470472.html

    Apache官方文档:http://tomcat.apache.org/tomcat-7.0-doc/config/filter.html#CORS_Filter

    另外还有一些跨域安全方面的问题等等,具体请参考大牛的文章

    Ajax跨域、Json跨域、Socket跨域和Canvas跨域等同源策略限制的解决方法 http://blog.csdn.net/freshlover/article/details/44223467

  • 相关阅读:
    YbtOJ20030 连珠风暴
    YbtOJ20029 最大权值
    P6859 蝴蝶与花
    P4115 Qtree4
    P2486 [SDOI2011]染色
    P2487 [SDOI2011]拦截导弹
    P5163 WD与地图
    P3733 [HAOI2017]八纵八横
    CF1100F Ivan and Burgers
    P1712 [NOI2016]区间
  • 原文地址:https://www.cnblogs.com/zoomla/p/12702830.html
Copyright © 2011-2022 走看看