如何将 Rails + Webpacker 应用程序部署到 Heroku?
Posted
技术标签:
【中文标题】如何将 Rails + Webpacker 应用程序部署到 Heroku?【英文标题】:How to deploy a Rails + Webpacker app to Heroku? 【发布时间】:2018-03-31 08:36:02 【问题描述】:我正在尝试将 Rails 5 应用程序部署到 Heroku。然而,这是我第一次将 webpack 添加到等式中。
我使用 webpack 在需要时添加了一些 Vue 组件。在我的本地环境中,一切运行良好,但是,在部署到 Heroku 时,事情并没有真正按计划进行。
预编译资产(来自管道和 webpack)完成。但是,当我启动应该运行 Vue 的页面时,在控制台中,当浏览器尝试检索预编译的包/主 javascript 文件时,我看到 404 错误。
这是 Heroku 日志显示的内容:
2017-10-19T10:04:51.947282+00:00 heroku[router]: at=info method=GET path="/packs/main-49ef6f7f11bf1482d113.js" host=appname.herokuapp.com request_id=fce4e051-2880-4566-8e66-5cd3369a819f fwd="125.227.151.206" dyno=web.1 connect=0ms service=72ms status=404 bytes=1744 protocol=https
日志中没有显示其他重大错误。您是否知道如何解决或在哪里寻找更多详细信息?
如果这是一个“愚蠢”的问题,我深表歉意。这是我第一次真正使用 webpack 进行部署。
【问题讨论】:
嗨,你能解决这个问题吗?我有同样的问题:( 【参考方案1】:原来我的合作开发者将 /public/packs 添加到 .gitignore 中,因此该目录没有推送到 Heroku
【讨论】:
对我来说,我不得不注释掉public/assets
,但这是一种解决方法,不一定是解决方案。您不必将所有包都推到源代码控制中,因为它们会弄脏所有东西并且不需要在那里。 Web 服务器应该编译它并为你生成包,所以你不需要发送任何东西。不过,不管用什么都行,哈哈。谢谢你这个聪明的主意!以上是关于如何将 Rails + Webpacker 应用程序部署到 Heroku?的主要内容,如果未能解决你的问题,请参考以下文章
如何将 Rails 6 中的 JqTree 与 webpacker 集成,树不是函数
Rails 5/6:如何在 webpacker 中包含 JS 函数?
如何在 Rails / Webpacker / React 应用程序中处理图像?