【问题标题】:Can't load assets ressources (css + js) in production with Rails 6无法使用 Rails 6 在生产中加载资产资源(css + js)
【发布时间】:2020-08-24 00:43:32
【问题描述】:

当我在生产模式下启动我的应用程序时,资产(css + js)无法正确加载。

我进入浏览器控制台net::ERR_ABORTED 404 (Not Found) 或Rails 日志ActionController::RoutingError (No route matches [GET] "/packs/js/application-51bdb73d26ac893c3407.js"):

我在环境/production.rb 中创建了rake assets:precompile 并转为config.assets.compile = true,但结果相同

对于生产模式,我使用相同的应用程序和相同的目录,我只是将-e production 作为参数添加到rails server 命令

【问题讨论】:

  • 我现在遇到了同样的错误。尝试了一堆东西,但无法弄清楚。我正在使用导轨 6.0.3。我有某种感觉可能是我的问题,但无论如何我会关注这个问题
  • 您需要在这里更加准确,我们才能为您提供帮助。你在哪里预编译资产?本地?在生产服务器上?您是否将文件部署到生产服务器?我们可以采取哪些具体步骤来重现该问题?请编辑和澄清。

标签: css ruby-on-rails ruby-on-rails-6 webpacker


【解决方案1】:

看来您应该将RAILS_SERVE_STATIC_FILES 环境变量设置为true

建议基于我在解决相同问题时发现的issue comment

这只影响config/environments/production.rb的配置:

  # Disable serving static files from the `/public` folder by default since
  # Apache or NGINX already handles this.
  config.public_file_server.enabled = ENV['RAILS_SERVE_STATIC_FILES'].present?

【讨论】:

    猜你喜欢
    • 2022-10-30
    • 1970-01-01
    • 1970-01-01
    • 2020-09-14
    • 2017-01-05
    • 2013-09-13
    • 1970-01-01
    • 2017-02-06
    相关资源
    最近更新 更多