mhtt
V2EX  ›  问与答

跨域访问的问题

  •  
  •   mhtt · Dec 25, 2015 · 2783 views
    This topic created in 3973 days ago, the information mentioned may be changed or developed.

    一个 web 项目中用到了 font-awesome ,比如该 web 的访问地址是 http://a.com ,而 font-awesome 是放在 http://b.com 上的,调用

    <link rel="stylesheet" href="http://b.com/font-awesome/4.5.0/css/font-awesome.min.css">

    访问时总是提示跨域被 blocked , http://a.com 需要做跨域允许的操作,可是如果我用其它第三方的,比如

    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">

    这里访问就正常了, http://a.com 这里不需要任何操作,那么请问,如果才能实现不需要提示错误?

    8 replies  •  2015-12-25 16:44:41 +08:00
    abelyao
    abelyao
    Dec 25, 2015 via iPhone
    1
    你确定是因为跨域?
    miniers
    miniers
    Dec 25, 2015
    2
    https 访问 http 的资源也会报错
    fractal314
    fractal314
    Dec 25, 2015 via Android
    3
    前几天我也遇到一样的问题。这是因为浏览器下载字体的时候,需要跨域 get 请求,在 b.com 的 response 头部加 Access-Control-Allow-Origin:*。
    SourceMan
    SourceMan
    Dec 25, 2015
    4
    HTTPS 吧
    mhtt
    mhtt
    OP
    Dec 25, 2015
    5
    @fractal314 请问如何在 b.com 上做 response 头部加 Access-Control-Allow-Origin:*? b.com 上只有 font-awesome 这一个文件夹,包含了从官方下载的内容。
    PublicID
    PublicID
    Dec 25, 2015 via Android
    6
    CSS 文件应该没有跨域问题,错误截图看看
    paicha
    paicha
    Dec 25, 2015
    7
    @PublicID
    @abelyao
    @SourceMan

    link 标签确实不存在跨域问题。
    但是 css 里请求的 web fonts 是会跨域的。

    http://stackoverflow.com/questions/5008944
    fractal314
    fractal314
    Dec 25, 2015
    8
    nginx 在配置文件中加一句 add_header Access-Control-Allow-Origin "*";
    apache 参考楼上
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1242 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 23:47 · PVG 07:47 · LAX 15:47 · JFK 18:47
    ♥ Do have faith in what you're doing.