«Запрошенный URL не был найден на этом сервере» на refre sh или при написании React вручную - PullRequest
0 голосов
/ 09 июля 2020

Я новичок в React и веб-разработке и создал простой сайт.

Все работает хорошо на localhost, однако, когда я его построил и запустил, возникла эта ошибка, а именно, когда я либо выписываю полное имя страницы - www.xxx.com/AboutUs дает это «404 Not Found - запрошенный URL не был найден на этом сервере».

Однако это работает чтобы получить доступ и увидеть страницу, когда я нажимаю ссылку в нижнем колонтитуле, но когда я обновляю sh страницу / AboutUs, появляется та же ошибка.

Я пытался исправить это несколькими решениями но они либо устарели, либо не соответствуют передовой практике. Насколько я понимаю, он должен что-то делать с моим BrowserRouter, поэтому я приложу код. Как было сказано ранее, он работает с go на странице / AboutUs, щелкнув ссылку, которая есть у меня в нижнем колонтитуле.

class Routes extends React.Component {
render() {
    return (
        <Switch>
            <Route exact path="/" component={Frontpage} />
            <Route exact path="/AboutUs" component={AboutUs} />
            <Route path="/*" component={ErrorPage} />
        </Switch>
    );
}

}

экспорт маршрутов по умолчанию;

и вот как я обрабатываю ссылку в нижнем колонтитуле

<Link to='/AboutUs' id="mailTo2">About Us</Link>

Ответы [ 2 ]

0 голосов
/ 09 июля 2020

Обновление.

Я исправил это, добавив .htaccess-файл со следующим кодом

Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.html [QSA,L]
0 голосов
/ 09 июля 2020

Просто убедитесь, что вы возвращаете статические c ресурсы со своего сервера.

Пример с Express Сервером

app.get('*', (req, res) => res.sendFile(`${staticPath}/index.html`));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...