Ошибка при деплое на Heroku

Bild происходит успешно. Однако сначала при переходе на залитый сайт выдавало ошибку Cannot GET / На просторах интернета нашла такое решение:

if (process.env.NODE_ENV === 'production') {
  // set static folder
  app.use(express.static('client/build'));
}
app.get('*', (req, res) => {
  res.sendFile(path.resolve(__dirname, 'client', 'build', 'index.html'));
});

Однако в этом случае на сайте появляется ошибка Internal Server Error.

Подскажите, как это можно испавить?

Мой файл index.js

const express = require('express');
const mongoose = require('mongoose');
const dotenv = require('dotenv');

dotenv.config();
const app = express();
const logger = require('./winston');

app.use(express.json({ extended: true }));

if (process.env.NODE_ENV === 'production') {
  // set static folder
  app.use(express.static('client/build'));
}
app.get('*', (req, res) => {
  res.sendFile(path.resolve(__dirname, 'client', 'build', 'index.html'));
});

app.use('/api/auth', require('./routes/AuthRoutes'));
app.use('/api/link', require('./routes/LinkRoutes'));
app.use('/api/admin', require('./routes/AdminRoutes'));
app.use('/t', require('./routes/RedirectRoutes'));

const PORT = process.env.PORT || 5000;

async function start() {
  try {
    await mongoose.connect(
      process.env.BD,
      {
        useNewUrlParser: true,
        retryWrites: true,
      },
      );

    app.listen(PORT, () => {
      console.log('Start work');
      logger.info(`Server started and running on : ${PORT} port`)
    });
    
  } catch (e) {
    logger.error('Server Error')
    console.log('Server Error', e.message);
    process.exit(1);
  }
}

start();

package.json

{
  "name": "projectnodejs",
  "version": "1.0.0",
  "description": "У цьому проекті я вирішила зробити додаток, який відтворює домашню електронну бібліотеку.",
  "main": "index.js",
  "scripts": {
    "start": "node index.js",
    "server": "nodemon index.js",
    "lint": "eslint **/*.js",
    "client": "npm run start --prefix client",
    "dev": "concurrently \"npm run server\" \"npm run client\""
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/Sasha4907/projectNodeJS.git"
  },
  "keywords": [],
  "author": "Sasha Ped",
  "license": "ISC",
  "bugs": {
    "url": "https://github.com/Sasha4907/projectNodeJS/issues"
  },
  "homepage": "https://github.com/Sasha4907/projectNodeJS#readme",
  "dependencies": {
    "@craco/craco": "^7.0.0-alpha.3",
    "axios": "^0.27.2",
    "babel-eslint": "^10.1.0",
    "babel-loader": "^8.2.5",
    "config": "^3.3.7",
    "dotenv": "^16.0.1",
    "eslint-config-recommended": "^4.1.0",
    "eslint-plugin": "^1.0.1",
    "eslint-plugin-babel": "^5.3.1",
    "eslint-plugin-flowtype": "^8.0.3",
    "eslint-plugin-react-hooks": "^4.6.0",
    "express": "^4.18.1",
    "express-validator": "^6.14.2",
    "fetch": "^1.1.0",
    "hooks": "^0.3.2",
    "js-acl": "^1.0.0",
    "jsonwebtoken": "^8.5.1",
    "mongoose": "^6.5.0",
    "node": "^18.7.0",
    "proxy": "^1.0.2",
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "react-router-dom": "^6.3.0",
    "react-scripts": "^5.0.1",
    "request": "^2.88.2",
    "shortid": "^2.2.16",
    "typescript": "^4.7.4",
    "webpack": "^5.74.0",
    "webpack-dev-server": "^4.9.3",
    "winston": "^3.8.1"
  },
  "devDependencies": {
    "@typescript-eslint/parser": "^5.32.0",
    "concurrently": "^7.3.0",
    "eslint": "^8.21.0",
    "eslint-config-airbnb": "^19.0.4",
    "eslint-config-airbnb-base": "^15.0.0",
    "eslint-config-node": "^4.1.0",
    "eslint-config-prettier": "^8.5.0",
    "eslint-config-react-app": "^7.0.1",
    "eslint-plugin-jest": "^26.7.0",
    "eslint-plugin-jsx-a11y": "^6.6.1",
    "eslint-plugin-node": "^11.1.0",
    "eslint-plugin-prettier": "^4.2.1",
    "eslint-plugin-react": "^7.30.1",
    "eslint-plugin-sonar": "^0.8.0",
    "eslint-plugin-sonarjs": "^0.14.0",
    "husky": "^8.0.1",
    "jest": "^28.1.3",
    "lint-staged": "^13.0.3",
    "nodemon": "^2.0.19",
    "prettier": "^2.7.1"
  }
}

Ответы (0 шт):