2017-11-10 87 views
1

我有一个问题让我在几个小时后感到困惑。我有一个快速服务器上的聊天应用程序的小网站。在本地主机上根本没有问题。图像加载正常,CSS和JS文件确定,一切都完美。网站图片无法加载,但是其他静态文件却不能加载

但是,当我将代码在线推入IBM-Cloud(ex-bluemix)时,图像给了我一个404。其余的静态文件确实得到了服务,而应用程序以其他方式正常工作。

文件结构如下所示:

--client 
    --resources 
     logo.png 
    --scripts 
     loginScreen.js 
    --stylesheets 
     stylesheet1.css 
    index.html 
--server 
    app.js 

服务器在app.js开始,在代码中,我把这个初始化服务器之前:

expressApp.use(express.static(path.join(__dirname, "..", "client"))); 

我有一些小在构建Docker容器后检测到的文件名大小写问题,但已解决,应该不是问题。有任何想法吗?

+0

你检查了客户端文件夹权限 – YouneL

+0

我刚刚检查了他们,他们都没问题。但是你的想法让我在网上的服务器上发现了一些奇怪的东西。我在github上推送的图像文件名更改不是从IBM服务器上获取的,尽管在github中一切正常。通常情况下,所有其他更改都会在服务器上注册我想我会写一份错误报告。谢谢。 :) – ntakwing

回答

1

简单的云基础工具链成功注册我在github中的提交并触发了自动构建和部署。

所有代码更改均由bluemix服务器正常提取。但文件名不变。因此,例如名为Logo.png的文件在本地被重命名为logo.png。这个改变通常被推送到github中。但是用ssh登录到bluemix服务器显示文件名仍然是Logo.png。

我不得不手动更改文件名$ mv,现在它可以工作。

+0

我怀疑如果你假装改变你的logo.png,强制改变时间戳,你可以得到工具链来接受它。 – amadain