我们如何更改 URL 在 Rails 5.1 中提供的 webpacker 包?

How can we change URL from which webpacker packs are served in Rails 5.1?

我目前已将 webpacker 设置设为默认设置。我的应用程序 URL 是 http://myapps.net 编译后,资产将从 public/packs 目录提供,而 URL 在提供这些资产时是 http://myapps.net/packs/application-SHA.js,例如

如何继续提供来自 public/packs 的资产,但应用程序服务器现在提供这些资产的 URL 是 http://myapps.net/myapp1/packs/application-SHA.js

我的意图是然后我可以使用一个顶级域,并为每个单独的 Rails 应用程序命名空间,路径如 myapp1myapp2 等,无论我使用哪个负载均衡器使用可以将包解析为正确的应用程序,而不是转到顶级域并找不到资产。

您可以将 config/webpacker.yml 文件中的默认 public_output_path 更新到您想要的任何目录:

production:
  public_output_path: myapp1/packs

默认就是 packs.