【问题标题】:heroku application still referencing old files after push推送后heroku应用程序仍在引用旧文件
【发布时间】:2010-11-17 21:55:28
【问题描述】:

我最近在 Heroku 中遇到了这个非常奇怪的问题。

我在本地开发和测试,然后将更改推送到 Heroku。即使推送的文件已更改(并且 Heroku 确实识别它并推送新文件),当我查看 Heroku 上的确切网页时,它的行为就好像它仍在使用我刚刚推送的文件的旧版本。

当我在 firebug 中看到 HTML 源代码时,我实际上可以确认旧文件正在被使用。 我尝试使用 git push -f 来“强制” git push,但没有运气

有什么想法吗??

【问题讨论】:

    标签: heroku push


    【解决方案1】:

    尝试heroku restart 强制重启所有测功机。我并不积极,但我已经看到这样的迹象表明他们倾向于在推动后“懒惰地重新启动”测功机和工作人员。如果您想保证所有工作人员和测功机都在使用最新推送的代码,请在推送后重新启动。

    【讨论】:

    • 试过了..它仍然引用旧文件。 heroku 是否有可能脱离某种缓存?
    • 刚从 heroku 支持回来..好像我有两个具有相同类名的文件,所以即使我上传了一个新类,代码也只是使用旧类..我的错,Heroku 的引用正确的文件。
    • 我在 Heroku 读取陈旧文件时遇到了同样的问题。 (我没有像@Varun 这样的重复文件)。 heroku restart 命令修复了这个问题。
    • 这个答案有效,但我不得不等待几分钟才能清除旧数据。我一直运行 $ heroku restart 然后 $ heroku 日志,旧数据仍然会显示。大约 2 分钟后,旧数据消失了。
    【解决方案2】:

    我知道这是旧的,但我最近遇到了这个问题,原来它只是我的缓存。如果你点击 ctrl + F5 它会硬刷新页面和缓存。在到处搜索之后在我的案例中工作。

    【讨论】:

      【解决方案3】:

      也遇到了同样的问题,所以通过运行heroku git:clone -a my-app检查repo文件克隆了heroku master中当前的文件,并确认repo中的文件是更新版本。因此,较新的文件已正确上传,但没有被 heroku 反映。因此我运行heroku restart 并等待了很长时间,比如 3 或 4 个小时,问题解决了,heroku 开始运行新文件。

      不完全确定 heroku restart 或只是等待 4 小时解决了问题,我怀疑我需要等待 4 小时才能让 heroku 反映更新的 repo。

      但是,我认为,在部署到同一个主分支 git push heroku master 之后,heroku 需要一些时间来反映较新的文件,因此切换到较新的文件不会是即时的,需要时间。

      希望这可以帮助遇到同样问题的其他人。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-09-15
        • 2019-05-12
        • 2011-09-20
        • 1970-01-01
        • 2018-12-22
        • 2023-03-15
        • 2018-01-08
        • 1970-01-01
        相关资源
        最近更新 更多