#node.js #express #heroku
Вопрос:
мое приложение работает локально, но когда я развернул его на Heroku, оно возвращает внутреннюю ошибку сервера, ниже приведены мои настройки
const app = express();
app.use(bodyParser.urlencoded({extended: false}));
app.use(express.static(__dirname "/public/"));
const path = require("path");
app.get("/", (req, res, next) => {
// res.sendFile(path.join(__dirname, "public", 'index.html'));
res.sendFile(__dirname "/public/index.html");
//res.send('Testing one two');
});
Procfile:
"web: npm run dev"
когда я изменяю файл res.send на res.send («привет»), это работает
поэтому я использую npm run dev для запуска приложения, все работает хорошо, если не развернуто на heroku, я думаю, что делаю что-то не так, но я перепробовал все, что мог, я не буду работать. любая помощь, пожалуйста
Комментарии:
1. что говорится в журналах? что это за код ошибки? это 500? что вы написали в файле procfile?
2. Должно быть, вы написали неправильную команду в файле Procfile.
3. @NishantKumar я думаю, что это мой путь, когда я меняю свой файл res.send на файл res.send («привет»), это сработало
4. ваш сервер не отображает папку статической сборки. Попробуйте использовать этот путь app.use(express.static(путь.join(__dirname, ‘public’))); если общедоступной является ваша статическая папка сборки
5. @NishantKumar статические файлы находятся в папке под названием live внутри общей папки