У меня есть главный сервер на Heroku, который обрабатывает перенаправления на другие 2 приложения.
В основном есть 3 сервера:
- главный сервер (обрабатывает перенаправления)
- главный сервер приложений
- вторичный сервер приложений
Приведенный ниже код отлично работает для перенаправления, но у меня проблема со сном серверов с бесплатным dyno.
Когда пользователь пытается получить доступ к вторичному приложению, первоначально он запускает главный сервер. Когда главный сервер просыпается, он пытается разбудить вторичное приложение.
По какой-то причине он выдает ошибку («Ошибка приложения»), но если вы обновите страницу, она мгновенно обслуживает дополнительное приложение.
Что я должен сделать, чтобы избежать сообщения об ошибке?
const express = require('express');
const proxy = require('http-proxy-middleware');
const app = express();
const port = process.env.PORT || 3000;
const router = {
'secondaryapp.example.com': 'https://secondaryapp.herokuapp.com'
};
app.use('/', proxy({
target: 'https://mainapp.herokuapp.com',
changeOrigin: true,
router: router
}));
app.listen(port);