от
Я создал веб-сайт с использованием React.JS, однако теперь я размещаю его на сайте `, но я не могу получить доступ к другим страницам, кроме главной страницы. Я создал веб-сайт с использованием компонентов реагирования, как показано ниже, может ли это быть проблемой? Например, после того, как я щелкну ссылку «О веб-странице», он направит меня на страницу 404, которая не найдена. Но в разработке моя навигационная система работает отлично?
const Services = () => {

  return (
    
      <div className='container
    

        

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.
Анти-спам проверка:
Чтобы избежать проверки в будущем, пожалуйста войдите или зарегистрируйтесь.

2 Ответы

0 голосов
от
Прочтите https://facebook.github.io/create-react-app/docs/deployment в React docs о том, как запустить сервер реагирования на развертывание. В частности, я подозреваю, что это то, что вам нужно: Если вы используете Apache HTTP Server, вам нужно создать файл .htaccess в общей папке, который выглядит следующим образом:
Options 

Он будет скопирован в папку сборки при запуске npm run build.

Предостережение от комментария Квентина: Если вы хотите сделать свой сайт более индексируемым и доступным для SEO, другие решения, такие как NextJS, могут быть более подходящими для вашего проекта. https://nextjs.org/
    
0 голосов
от
Я не эксперт по вопросам хостинга, но так как я столкнулся и решил эту проблему, я отвечу на свои способности. При создании приложения реагирования создается один файл index.html. Если вы обслуживаете через nginx, вы можете легко настроить все маршруты, которые будут направлены на этот
index.html
. Однако в среде общего хостинга (cpanel), когда вы загружаете свою сборку, она загружается в одну папку, и только маршрут к этой папке направляет к этому
index.html
, а запись любого другого маршрута направляет вас в другой каталог общего хостинга, следовательно, вы находитесь перед 404 выпуск. Решение состоит в том, чтобы изменить файл
.htaccess
соответственно.     
...