Я пытаюсь развернуть несколько контейнерных SPA, используя обратный прокси-сервер для обработки маршрутизации к каждому.В текущей настройке каждый контейнер имеет производственную сборку create-реакции-приложение, обслуживаемую экспресс-приложением, которое по существу состоит из:
app.use(express.static(path.join(__dirname, '..', 'build')));
app.use('/*', (req, res) => {
res.sendFile(path.join(__dirname, '..', 'build', 'index.html'));
});)
Я настроил сервер nginx со следующими параметрами:
server {
listen 8081;
server_name example.domain.com;
location /app1 {
rewrite ^/(.*) /$1 break;
proxy_ignore_client_abort on;
proxy_pass http://localhost:3100;
proxy_redirect http://localhost:3100 https://example.domain.com/app1;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
}
}
Прокси-сервер работает так же, как когда я перехожу на http://localhost:8081/app1
, загружается index.html
встроенного приложения React, но все связанные js-файлы равны 404. Я попытался установить "homepage": "/app1"
в приложении React.package.json
но, похоже, это ничего не меняет.Он все еще ищет в комплекте js-файлы в корне сервера: Request URL: http://localhost:8081/static/js/bundle.js
Я не знаю, что делать дальше, любая помощь будет высоко ценится.
Бест,
П