【问题标题】:Heroku can't find this particular image path. Why?Heroku 找不到这个特定的图像路径。为什么?
【发布时间】:2015-01-05 08:32:19
【问题描述】:

我在 heroku 部署了一个应用程序。

在本地一切正常。但是,部署heroku时找不到两个img。 index.html 正好包含这个,在不同的地方:

 FOUND     <img src="img/bamboo-black.png" height="27"> <div class="loaderWrap">
 NOT FOUND <img class="loader" src="img/ajax-loader-black.gif"></div> 
 NOT FOUND <img src="img/person-placeholder.jpg" class="mainPicture" width="150">

为什么它会在本地工作而在 heroku 上失败?我不明白。

【问题讨论】:

  • 尝试在网址&lt;img src="/img/ajax..."中加入leading slash
  • 其实一开始有2个领先的salsh。我认为这是问题所在,所以我删除了它们。但它不是:/
  • 两个前导斜杠是“http://”的缩写形式,与单个前导斜杠完全不同。
  • 我的错,我的意思是每个 html 属性使用一个前导斜杠。

标签: node.js image heroku deployment path


【解决方案1】:

您是否将这两个文件提交到 repo 中?

发送git status 看看它们是否在“新文件”部分。

如果您已提交文件,请登录 Heroku dyno 并验证它们是否存在。

$ heroku run bash

您也可以尝试重新启动。

$ heroku restart

【讨论】:

  • 是的,我有。我已经定期部署 3 周了
  • 它没有用。我想我会尝试移动并从 CDN 或其他东西中获取它们
【解决方案2】:

修复它。

对于那些有一天可能会遇到同样问题的人:我使用了 CDN (cloudinary)

我换了:

<div class="loaderWrap"> <img class="loader" src="img/ajax-loader-black.gif"></div>

通过这个:

var $loader = $.cloudinary.image( LJ.cloudinary.loader_id, LJ.cloudinary.displayParamsLoader );
            $loader.appendTo( $('.loaderWrap') );

现在可以正常使用了。

【讨论】:

    猜你喜欢
    • 2018-11-15
    • 2020-01-04
    • 2017-03-07
    • 2013-06-06
    • 1970-01-01
    • 1970-01-01
    • 2015-08-04
    • 1970-01-01
    • 2020-08-07
    相关资源
    最近更新 更多