У меня есть приложение реагирования, использующее следующее для истории маршрутизатора.
import { BrowserRouter, Route, Link } from "react-router-dom";
import { createBrowserHistory } from "history";
<BrowserRouter history={history}>
...
Это обслуживается с использованием сервера Express, подобного этому (server.js) ...
//for build
// Serve the static files from the React app
app.use(express.static(path.join(__dirname, 'build')));
app.get('/*', function (req, res) {
res.sendFile(path.join(__dirname, 'build', 'index.html'));
});
Этоработает нормально, работает локально, и я могу успешно перейти к любому маршруту. После развертывания в производство, если я перехожу к Маршруту, я получаю
Cannot GET /Sites/SiteDashboard/
Структура моего проекта следующая, это стандартная установка CRA ...
Проблема, которую я имею, указывает на правильное местоположение в производственной сборке, чтобы указать на index.html (или любой другой), чтобы я мог получить доступ к истории, как я выполняю локально (npm)начало).
Может кто-нибудь посоветовать, где мне нужно указать.
Спасибо.