【问题标题】:Images not showing up on server but working fine on localhost in node js图像未显示在服务器上,但在节点 js 中的 localhost 上工作正常
【发布时间】:2021-07-25 06:45:55
【问题描述】:

我正在开发一个节点 js 应用程序,我有一些图像想在前端显示,但在数字海洋服务器上发布应用程序后,图像没有显示

下面是图片目录的结构

|__ static
  |__ assets
    |__ favicon
    |__ images

索引.js

app.use(express.static(__dirname + '/static'));

HTML 文件(使用 EJS)

<img src="/assets/images/banner.png">

图像在本地主机上工作正常,但在服务器上却不行。无法弄清楚原因,任何线索都会很棒。

更新:

我检查了文件夹权限,似乎没问题。 找到了解决方法,但不确定此问题的原因,我删除了父目录资产并将子目录直接移动到 static 下,之后它工作得很好。

对此问题的任何解释都可能有助于理解。

【问题讨论】:

  • 试试这个:app.use('/static', express.static(__dirname + '/static'));
  • 不,这没用
  • 找到了可行的解决方案,但仍不确定原因。我删除了父目录资产并直接在静态下移动了其他目录,如图像、网站图标,然后它就可以工作了!!

标签: javascript node.js express ejs digital-ocean


【解决方案1】:

您是否检查过文件夹权限?这可能会阻止您公开访问文件夹中的文件。你想拥有 755 权限。

【讨论】:

  • 权限似乎是正确的。找到了一个可行的解决方案,但仍然不确定原因。我删除了父目录资产并直接在静态下移动了其他目录,如图像、网站图标,然后它就可以工作了!!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-12
  • 2012-05-07
  • 2016-05-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多