相关疑难解决方法(0)

Amazon S3 CORS(跨源资源共享)和Firefox跨域字体加载

Firefox没有加载来自不同来源的字体,而不是当前的网页,这是一个长期存在的问题.通常,在CDN上提供字体时会出现问题.

在其他问题中提出了各种解决方案:

CSS @ font-face不支持Firefox,但使用Chrome和IE浏览器

随着Amazon S3 CORS的推出,是否有使用CORS解决Firefox中字体加载问题的解决方案?

编辑:很高兴看到S3 CORS配置的示例.

edit2:我找到了一个有效的解决方案而没有真正了解它的作用.如果有人能够提供有关配置和亚马逊对配置的解释所发生的背景魔法的更详细的解释,将非常感谢,就像nzifnab为它提供赏金一样.

css firefox amazon-s3 font-face cors

128
推荐指数
7
解决办法
8万
查看次数

如何在rails下的webrick中设置access-control-allow-origin?

我已经编写了一个小型rails应用程序,通过xmlhttprequests向另一个站点提供内容,这些站点将在另一个域上运行(无法让它们在同一台服务器上运行).我知道我需要在我的rails服务器上设置access-control-allow-origin,以允许请求的网页访问这些资料.

似乎有很好的文档说明如何使用Apache,这可能是我部署网站后将使用的服务器.虽然我正在开发,但我希望只使用webrick,因为我习惯使用rails.有没有办法配置webrick以在rails中提供适当的http标头?

ajax ruby-on-rails xmlhttprequest webrick cors

34
推荐指数
6
解决办法
3万
查看次数

Rails资产Cloudfront fontawesome CORS

我在stackoverflow/github上尝试了很多解决这个问题的解决方案,但我无法让它工作.

我正在使用font-awesome-rails而且我预编译了我的资产以进行生产.我在生产配置中为我的资产设置了CloudFront:

config.action_controller.asset_host = "https://XXXX.cloudfront.net"
Run Code Online (Sandbox Code Playgroud)

当我加载页面时(来自Chrome/Firefox,因为Safari可以使用CORS),我收到以下常见错误消息:

Font from origin 'https://XXXX.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://example.com' is therefore not allowed access.
Run Code Online (Sandbox Code Playgroud)

我已经尝试过:

  1. 添加gem rack-cors更改我的config.ru但没有成功
  2. 设置after_filter设置服务器标头但未成功
  3. 在CloudFront上为三个fontawesome文件创建失效,但没有成功

解决方法是删除fontawesome gem并改为使用:

<%= stylesheet_link_tag "//cdnjs.cloudflare.com/ajax/libs/font-awesome/4.4.0/css/font-awesome.min.css", :media => "all" %>
Run Code Online (Sandbox Code Playgroud)

但我宁愿找到问题.

谢谢

ruby-on-rails cors amazon-cloudfront font-awesome

9
推荐指数
1
解决办法
1867
查看次数