Rails 3.1生产环境资产:大文件被切成多个部分

3
自从我使用Rails 3.1和资产管道以来,我在生产模式下遇到了一个大问题。
当我执行bundle exec rake assets:precompile时,我会遇到错误,比如
'myjsfile.js'有一个无效的UTF-8字节序列,
特别是在tiny_mce插件js文件中。
所以我放弃了,在我的Mac上一切都正常工作,我在production.rb文件中写下了这一行:config.assets.compile = true 因此,JS文件生成没有错误。
另一方面,长文件(如jquery.js)存在一个大问题。
通常情况下,Rails只会生成jQuery文件的一半,而我找到的唯一解决办法是访问js文件的URL(http://myapp.com/assets/jquery.js)并多次刷新页面,过一段时间后,jquery文件就完整了。然后几天后问题又出现了,我不得不再做一次。
实际上,就像在编译大文件时,进程在中途停止,服务器发送了一半编译的文件。
你们中有人遇到过这个问题吗?有什么想法可以解决吗?
我在Ubuntu服务器上使用nginx和旅客进行生产。我在我的Mac上从未遇到过这个问题。
提前感谢你们的帮助!
1个回答

0

如果服务器内存不足,预编译过程将失败。尝试在 Mac 上执行 rake assets:precompile 命令,并提交生成的资产,以便在服务器上获取它们。

从长远来看,为每个成功构建在中间 CI 服务器上运行预编译。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接