Назад | Перейти на главную страницу

Express.js не обслуживает все статические файлы на heroku

там у меня небольшая проблема с node.js и выражаюсь на героку. У меня есть сервер node.js, который загружает мою страницу index.html и другие ресурсы:

process.env.PWD = process.cwd();
var express = require("express");
var fs = require("fs-extra");
var app = express();
app.use(express.static(process.env.PWD+"/Anos"));
app.use(process.env.PWD +"/Applications", express.static(process.env.PWD + '/Anos/Applications'));

app.get(process.env.PWD+"/Anos",function(req,res) {
});
console.log("hello bitche");
var server = app.listen(process.env.PORT || 8080,function() {
    console.log("Project Alexander listening on port 8080!");
});
global.io = require("socket.io").listen(server);
var login = require("./local_modules/login.js");
var saveFiles = require("./local_modules/fileFolderSave.js");
global.io.sockets.on("connection",function(client) {
    login(client,global.io,fs,process.env.PWD);
    saveFiles(client,global.io,fs,process.env.PWD);
});

Это отлично работает на localhost, но когда я развертываю его на heroku из Dropbox, он загружает только определенные вещи, такие как файлы css и js, все из которых находятся в подкаталогах. Не загружаются файлы icon.png из папок в папке приложений. Структура Dir:

Anos/
  index.html
  css/
     Taskbar/
     Desktop/
     Infopane/
  js/
     Taskbar/
     Desktop/
     Infopane/
  Applications/
     App1/
        icon.png
     App2/ etc..
        icon.png
  userData/
  users/
  images/

Приложение Вот) (тип

ан

и нажмите «Войти» и проверьте консоль на наличие ошибок 404. Позвольте мне знать, если вам нужно что-нибудь еще. Любые идеи? Что я могу изменить, чтобы избавиться от этих ошибок и правильно загрузить все? Заранее спасибо!

ОШИБКИ: образ

Однажды у меня была такая проблема. Я решил переименовать мою общую папку как общедоступную и сделать ее общедоступной, как это

var path = require('path')

process.env.PWD = process.cwd();
app.use(express.static(path.join(process.env.PWD, 'public')));

надеюсь, это поможет