@DaveGarrow

Почему ошибка при переходе по прямой ссылке в React?

Есть конструкция на React -
<BrowserRouter>
            <div className="app">
                <Switch>
                    <Route exact path="/">
				<Home />
                    </Route>
                    <Route path="/about">
				<About />
                    </Route>
                    <Route path="/contacts">
				<Contacts />
                    </Route>
                    <Route
                        path="/blog/:id"
                        render={(props) => {
                            return <CurrentArticle {...props} />;
                        }}
                    />
		    <Route path="/blogs">
				<Blog />
                    </Route>
		   <Route>
				<NotFound />
                    </Route>
                </Switch>
            </div>
        </BrowserRouter>


Локально переходы по страницам работают, 404 отображается ок. Прямые ссылки типа "localhost:3000/contacts" тоже работают.

Но на бою выдает 404 Not Found от nginx по адресу mysite.ru/contacts. Хотя если перейти на страницу из меню, с главной, то она отображается.
И почему тогда в таком случае не работает кастомная страница 404?
Может проблема в конфиге сервера?
Сейчас так
server {
    server_name mysite.ru;

    root /var/www/mysite/build;
    index index.html;

    location / {
        try_files $uri $uri/ $uri.html =404;
    }
}
  • Вопрос задан
  • 626 просмотров
Решения вопроса 1
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы