static - 问一个关于 javascript 加载的问题
黄舟
黄舟 2017-04-11 09:59:01
[JavaScript讨论组]

用chrome浏览器访问segmentfault,几乎所有javascript都失效,查看加载信息,如下所示:

Script from origin 'https://dfnjy7g2qaazm.cloudfront.net' has been blocked from loading by Cross-Origin Resource Sharing policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'https://segmentfault.com' is therefore not allowed access.

调查了一下(非义务,纯好奇),似乎把静态文件放在AWS上要做些设置:

http://stackoverflow.com/questions/25577981/font-from-origin-has-been-blocked-from-loading-by-cross-origin-resource-sharing

或者在Nginx服务器加配置:

location ~* \.(eot|ttf|woff)$ {
   add_header Access-Control-Allow-Origin '*';
}

或者在AWS上配置:

http://stackoverflow.com/questions/12229844/amazon-s3-cors-cross-origin-resource-sharing-and-firefox-cross-domain-font-loa


关于Cross-Origin Resource Sharing

https://www.w3.org/TR/cors/#access-control-request-headers-request-header

大家说哪种办法好呢?

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(1)
伊谢尔伦

经研究,翻墙访问 sf 可复现这个现象,但是我换了一个日本的节点访问,却不跨域了,然后再切回原来的翻墙节点 hk,也不再出现跨域问题,总之很诡异。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号