React Router не работает с корзиной Amazon S3? - PullRequest
0 голосов
/ 08 января 2019

Я развертываю приложение React на сервере Amazon в корзине S3. Проблема в том, что многие сайты размещены под одним и тем же адресом. Это сайт-витрина от компании, на которую я работаю. Домашняя страница: www.example.com

Мой веб-сайт должен стать доступным по адресу www.example.com/mywebsite, это также должна быть домашняя страница моего веб-сайта. Оттуда вы можете нажать вокруг сайта. Я создал собственный префикс для него, он отлично работает почти для всех страниц, кроме тех, которые содержат какой-то идентификатор в пути.

Поэтому, когда вы перейдете на www.example.com/mywebsite/user/123, вы будете перенаправлены на www.example.com

Похоже, что серверы Amozon не распознают часть идентификатора в URL.

Вот мои конфигурации маршрутов от реагирующего маршрутизатора (в Typescript):

export class Routes extends React.Component {
render() {
    return (
        <div>
            <Route exact path={HOME_PAGE} component={Home}/>          
            <Route exact path={HOME_PAGE + "/user/:id"} component={UserDetails}/>
        </div>
    );
}

}

Это префикс, который я создаю для URL:

//Specifies the ENVIRONMENT the app runs in DEVELOPMENT or PRODUCTION
export const ENVIRONMENT: "DEVELOPMENT" | "PRODUCTION" = "PRODUCTION"

//When in development the app is running local so no prefix is needed else
//add /mywebsite to the home page url
export const HOME_PAGE = (ENVIRONMENT == "DEVELOPMENT") ? "" : "/mywebsite"

Сайт доступен онлайн, но я не имею права делиться ссылкой в ​​Stackoverflow

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...