您当前的位置:首页>nginx频道>Access-Control-Allow-Origin 站点跨域请求的问题

Access-Control-Allow-Origin 站点跨域请求的问题

发布时间:2017-11-03 类型: nginx频道 编辑: 小猪迷

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

    Access to Font at 'http://www.amoydao.com/ui.yzshop.com/tools/font-awesome/fonts/fontawesome-webfont.woff2?v=4.7.0' from origin 'http://lcctest.amoydao.com' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://lcctest.amoydao.com' is therefore not allowed access.

    使用火狐调试错误如下:

    Access-Control-Allow-Origin 站点跨域请求的问题0

    后来查下文档,参考网页的解决方式如下

    IIS服务器

    在IIS添加如下标头即可

    Access-Control-Allow-Headers:Content-Type, api_key, Authorization
    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>


  • 没有评论哦,快来抢个沙发吧
小猪迷

                

微信好友

用微信扫描二维码,
加我好友。

微信公众号

用微信扫描二维码,
订阅小猪迷公众号。

234113618

用微信扫描二维码,
加入小猪迷 QQ 群。

Access-Control-Allow-Origin 站点跨域请求的问题-小猪迷PHP[xiaozhumi.com]

Access-Control-Allow-Origin站点跨域请求的问题

https://www.xiaozhumi.com/nginx/31.html