У меня есть пользовательские маршруты, такие как:
// @flow
import React, { PureComponent } from 'react';
import { Switch, Redirect } from 'react-router-dom';
import { withRouter } from 'react-router';
import { Route } from 'components/Routes';
import Story from 'pages/Story';
import Page404 from 'pages/404';
class Routes extends PureComponent<{}> {
render() {
return (
<Switch>
<Route exact path="/" render={props => <Story {...props} />} />
<Route
exact
path="/chapter/:id"
render={props => <Story {...props} />}
/>
<Route path="/404" render={props => <Page404 {...props} />} />
<Redirect to="/404" /* Must be the last one */ />
</Switch>
);
}
}
export default withRouter(Routes);
Это прекрасно работает в localhost, если я посещаю localhost: 3000 / chapter / 3, веб-приложение перенаправляет успешно, к сожалению, в живых сборках, работающих на службах приложения Azure.если я захожу: mysite.azurewebsites.net/chapter/3 Мне выдается сообщение об ошибке:
Требуемый ресурс удален, изменилось его имя или временно недоступен.
У меня работает план обслуживания приложений на базе Windows.Я уверен, что есть какая-то опция для настройки перенаправления, например / chapter / * -> / www_siteroot /, но я не смог выяснить, как это сделать.
Я исправил проблему, перейдя внастройки службы приложений и добавление / chapter / 1, / chapter / 2 и т. д. и т. д. в «Виртуальные приложения и каталоги» и направление их на сайт \ wwwroot.
Я бы предпочел использовать подстановочный знак, например/ chapter / * но, похоже, это не работает, и я получаю сообщение об ошибке.