Здесь Вы можете решить эту проблему двумя способами.
1.Change история маршрутизации «hashHistory» вместо browserHistory в месте
<Router history={hashHistory} >
<Route path="/home" component={Home} />
<Route path="/aboutus" component={AboutUs} />
</Router>
Теперь построить приложение с помощью команды
sudo npm run build
Затем поместите папку сборки в вашей вар/www/folder, теперь приложение отлично работает с добавлением # тега в каждом URL-адресе. как
локальный/#/дом локальных/#/ABOUTUS
Решения 2: без # тега используя browserHistory,
Установите историю = {browserHistory} в вашем маршрутизаторе, сейчас построить его с помощью Суд НПМ запустить сборку.
Вам необходимо создать файл «conf», чтобы решить 404 не найденную страницу, Файл conf должен быть таким.
открыть свой тип терминала ниже команды
кд/и т.д./apache2/сайты-доступные Ls нано sample.conf Добавить ниже содержание в нем.
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName 0.0.0.0
ServerAlias 0.0.0.0
DocumentRoot /var/www/html/
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory "/var/www/html/">
Options Indexes FollowSymLinks
AllowOverride all
Require all granted
</Directory>
</VirtualHost>
Теперь вам нужно включить файл sample.conf, используя следующую команду
cd /etc/apache2/sites-available
sudo a2ensite sample.conf
, то он попросит вас перезагрузить сервер Apache, используя SUDO службы apache2 перезагрузки или перезагрузить
затем откройте папку localhost/build и добавьте файл .htaccess с содержимым ниже.
RewriteEngine On
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^.*$/[L,QSA]
Теперь приложение работает нормально.
Примечание: измените 0.0.0.0 ip на локальный IP-адрес.
Я надеюсь, что это будет полезно для других.
Вы видите какую-либо ошибку js в консоли браузера при загрузке страницы индекса? – vitomd
Используйте веб-пакет. Существует так много способов создать реактивное приложение. Webpack испускает файл пакета, который невидим, когда мы запускаем сервер webpack с помощью команды npm run start. Я не могу понять, почему вы создаете другой файл отдельно. В моем случае я только что создал файл index.html, файл index.js и другие js-файлы. Используется webpack для интеграции. –
@ Charan Cherry: Я уже использую webpack. create-react-app - это настроенная настройка веб-пакета. Командная строка 'npm run build' создает файл index.html, и соответствующий javascript все вставляется в один мини-js-файл, все помещенные в одну папку« build ». – Paulos3000