#php #html #reactjs #wordpress #react-router
#php #HTML #reactjs #wordpress #react-маршрутизатор
Вопрос:
У меня установлено приложение react в корневом домене, предположим domain.com и я установил WordPress в подкаталог с именем domain.com/blog . Если я добавлю пустой маршрут, подобный <Route exact path="/blog" />
, я получу пустую страницу. Есть ли способ получить доступ к файлам .php или .html в подкаталоге за пределами компонентов react?
Пожалуйста, обратитесь к приведенному ниже коду маршрутизации
<BrowserRouter>
<Switch>
<Switch>
<Route exact path="/" render={(props) => <Index {...props} />} />
{/*route added since /blog redirects to / because of 404 condition at the bottom */}
{/* <Route exact path="/blog" /> */}
{/*404 redirection for other URLs */}
<Redirect to="/" />
<Redirect from="/" to="/" />
</Switch>
</Switch>
</BrowserRouter>
Из-за добавленных ниже перенаправлений, если я не указываю маршрут для /blog, он перенаправляется на корневой URL ‘/’ (это условие 404 страница не найдена).
Ответ №1:
Маршрут предназначен только для внутренней маршрутизации react. Если вы хотите перенаправить URL-адрес какой-либо другой платформы, вам нужно использовать привязку (тег)
Вы можете прочитать больше здесь это
<a href="https://example.com/blog">Go to Blog</a>
Обновить:
<BrowserRouter>
<Switch>
<Switch>
<Route exact path="/" render={(props) => <Index {...props} />} />
<Route path="*" render={props => <NotFound />}
</Switch>
</Switch>
</BrowserRouter>
Комментарии:
1. Я понимаю, что вы сказали, но я должен указать маршрут для URL блога, поскольку я добавил перенаправление 404, чтобы все остальные маршруты были перенаправлены на компонент 404. Есть ли способ получить маршрут 404 и направить пользовательский маршрут в подкаталог
2. Маршрут требуется только для внутренней маршрутизации react. Вам не нужно добавлять какой-либо маршрут для другого веб-URL. Для другого URL вам нужно добавить тег, а не ссылку. Ссылка будет использоваться только для внутреннего URL react.
3. Я понял! но я использую маршрут перенаправления 404
<Redirect to="/" />
, из-за этого, если я напишу domain.com/blog он перенаправляется на домашнюю страницу. Это прекратится, только если я предоставлю маршрут специально для blog. Есть ли какой-либо другой способ перенаправить его на domain, а также добиться 404 перенаправлений?4. пожалуйста, поделитесь своим кодом. И другой способ, которым это могло бы быть. Откройте блог в новой вкладке, и ваш сайт react перенаправит на главную страницу.