Rails在生产页面加载中复制资产?

时间:2015-07-24 16:35:02

标签: javascript css ruby-on-rails heroku asset-pipeline

这是我第一次将一个真正的应用程序部署到生产中,我们在网站上遇到了一些速度问题。现在的主要问题是加载索引页面所需的时间,因此我知道这对于查询或类似的东西来说真的很重要。

我们使用Heroku + Puma + CloudFront作为CDN来为我们的静态资产提供服务。事实是,我并不确定这应该发生:

Dev Tools

如您所见,application.js和application.css正在加载两次,一次来自cloudfront,另一次来自/ assets。这应该发生吗?这只是一个例子,但是我发现了一些图像和.svgs,它们被“加载”了两次。

重要的是要注意,包含js和css的调用只在头标记中进行一次

由于

1 个答案:

答案 0 :(得分:0)

资产正在加载一次,但是通过两次HTTP调用,第一次是重定向到第二次。您可以看到第一个application.js导致第二个application.js的重定向(请参见下面第三列中的URL),application.css也是如此

要避免重定向,您需要配置Rails以从其他域加载资源。为此,请在相关环境配置文件中设置config.action_controller.asset_host,如下所示:

config.action_controller.asset_host = "http://XXXXXXX.cloudfront.net"
相关问题