Развертывание приложения Node.js React на CPanel - «Не удалось загрузить ресурс: сервер ответил со статусом 404 ()» - PullRequest
0 голосов
/ 21 марта 2019

Я загрузил свою папку сборки в папку CPanel public_html, но когда я захожу в домен 'https://domain -name / build / ', я просто получаю пустую страницу. Когда я смотрю на исходный код страницы, появляется сообщение «Ошибка загрузки ресурса: сервер отвечает с состоянием 404 ()» для статических файлов js и css. Любая помощь очень ценится.

1 Ответ

0 голосов
/ 21 марта 2019

Похоже, вы обслуживаете свое приложение из подкаталога, который является /build.Чтобы заставить его работать, вы должны сообщить разработчику внешнего интерфейса, что вы обслуживаете свое приложение в подкаталоге.Чтобы это сработало, сделайте следующее: я полагаю, вы используете create-react-app,

  1. Сначала добавьте свойство basename к вашему маршруту,

    <Router basename={'/build'}>
      {/* your Route config */}
    </Router>
    
  2. обновить свойство homepage до файла package.json,

    "homepage": "https://yourdomain/build",
    
  3. Также обновить маршруты

    <Router basename={'/build'}>
      <Route path={`${process.env.PUBLIC_URL}/`} component={Home} />
    </Router>
    

    process.env.PUBLIC_URIво время сборки переменная будет заменена на homepage.

  4. изменить все атрибуты вхождения to в вашей реакции Link компонент

    <Link to={`${process.env.PUBLIC_URL}/page`}> ... </Link>
    

Теперь ваше приложение должно работать в https://yourdomain/build.

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