#reactjs #react-router #server-side-rendering
#reactjs #react-маршрутизатор #рендеринг на стороне сервера
Вопрос:
У меня есть приложение React с маршрутизаторами, у меня также есть компонент 404 и т. Д. Но я не знаю, как отправить заголовок 404 в Google bot.
Я просто думаю, что это невозможно из-за приложения React без SSR. Я прав?
Ответ №1:
Если вы используете Router
, вы можете настроить свои страницы следующим образом:
<Router>
<Switch>
<Route exact path = "/home" component={HomePage} />
<Route exact path = "/sign-up" component={SignUpPage} />
<Route exact path = "/login" component={LoginPage} />
<Route exact path="/incorrect-login" component={IncorrectLoginPage} />
<Route exact path = "*" component={PageNotFound} /> //404 Component
</Switch>
</Router>
При этом вы устанавливаете свой PageNotFound
в конец списка маршрутизаторов, где, если URL-адрес приложения React не соответствует ни одному из ваших предыдущих URL-адресов, запускается PageNotFound
маршрут. Вы можете просто отобразить свой не найденный компонент на этой странице, как и на любой другой странице вашего приложения.
Я также использовал exact
so, чтобы URL-адрес должен быть точно таким же вместе с Switch
инструкцией, чтобы одновременно можно было запускать только ОДИН компонент страницы. В *
основном это означает ВСЕ другие URL-адреса, кроме указанных ранее.
PageNotFound
Обрабатывается как оператор catch по умолчанию, поэтому он находится внизу
Комментарии:
1. Но как насчет интерпретации этого googlebot?