【问题标题】:Rails 5 assets not loading consistently in ProductionRails 5 资产在生产环境中加载不一致
【发布时间】:2018-02-16 07:29:19
【问题描述】:

我在页面末尾的视图 (HAML) 中有一个 = javascript_include_tag "subfolder/Js_File"

我在清单 application.js 中有以下行 //= link_directory ./subfolder

当我第一次清除浏览器缓存并加载应用程序时。我的资产没有加载(没有 CSS 和 JS)。当我执行 CTRL+R 或 Command+R 时。页面使用 CSS 和 JS 加载。

但是“子文件夹/Js_File”中的JS仍然没有加载。当我从该页面导航出去并稍后导航回该页面时,我的“子文件夹/Js_File”文件会加载并按预期工作。

我的 production.rb 有以下资产行

  config.public_file_server.enabled = true # tried changing this to false
  config.assets.compile = true # tried changing this to false
  config.assets.digest = true
  config.assets.version = '1.0'

【问题讨论】:

  • assets -> javascripts -> subfolder -> Js_file.js 是 assets 目录结构。在控制台上,我得到 404 assets not found。但是在 ctrl+r 刷新后一切正常。这似乎很奇怪。
  • 也是第一次加载,application.css在控制台显示404
  • 这听起来像 sprockets gremlin,尝试从 gemfile 和 application.js 中删除 sprockets,然后从任何包含标签中删除“data-turbolinks”。

标签: javascript ruby-on-rails ruby ruby-on-rails-5.1 ruby-on-rails-5


【解决方案1】:

以上配置正确。远程托管的资产服务器出现问题,它是负载平衡的。在其中一个节点上,资产没有被复制。基础设施必须修复。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多