【问题标题】:Rails assets not being found in production在生产中找不到 Rails 资产
【发布时间】:2017-05-25 07:24:06
【问题描述】:

我正在使用 AWS、Capistrano 和 Nginx 部署 Rails 应用程序。除了资产,一切都很好。

应用程序正在寻找正确的资产,但文件名的哈希值错误。

示例: 该网站正在寻找这个: http://35.167.19.250/assets/application.self-afbcf52bc2ee07a55f9597f238014e6c33f9199949f2397157e6d2dc72d3dd0e.css?body=1 加载资源失败:服务器响应状态为 404(未找到) 但实际的文件是已经预编译的是: http://35.167.19.250/assets/application-fc0ac1dbdd04ee2388affcd3154154fb6c6d1b1a33298abb8cf281c15d4d4c56.css

对我哪里出错有任何想法吗?

【问题讨论】:

    标签: ruby-on-rails amazon-web-services amazon-ec2 deployment asset-pipeline


    【解决方案1】:

    如果您要预编译资产,则需要在生产模式下进行,以便指纹匹配。

    更多详情请参阅this SO thread,但我认为您需要做的就是RAILS_ENV=production bundle exec rails assets:precompile

    【讨论】:

    • 嗨,Brian,我是在运行 capistrano 部署之前运行它,还是在部署文件后在服务器上运行它?谢谢
    • 抱歉,刚刚看到这个 - 我相信你会在部署前进行。
    猜你喜欢
    • 2014-03-25
    • 1970-01-01
    • 2013-07-16
    • 1970-01-01
    • 1970-01-01
    • 2015-07-14
    • 1970-01-01
    • 2015-04-13
    • 2020-03-01
    相关资源
    最近更新 更多