10 of 10 menu

React Router на PHP хостинг

Како што веќе знаете, по изградбата проектот React претставува обична статика, која може да се вчитува на кој било хостинг, и таму веднаш ќе работи.

Сепак, постои проблем со React Router. Работата е така што Router при работа ја менува URL-адресата на страниците во прелистувачот. При тоа реално страницата не се вчитува повторно, туку само се менува URL-адресата со помош на JavaScript.

На веб-страницата, поставена на хостинг, Router ќе работи. Но, ако се наоѓате на некоја страница на веб-страницата, освен главната, и ја превчитате, ќе се појави 404 грешка.

И тоа е логично, бидејќи прелистувачот ќе бара датотека по дадената URL-адреса, како што обично работат статичните веб-страници. А во нашата апликација таква страница нема да постои, бидејќи ние само симулираме нив, а всушност целата наша апликација работи на index.html.

За решавање на проблемот потребно е да се направи така, што сите URL-адреси кои не водат до реално постоечки датотери, да бидат пренасочени кон index.html. Ова се прави со средствата на веб-серверот, кој работи на хостингот.

Виртуелните хостинзи работат на PHP. Како правило, како сервер се користи Apache. Во него е достапна специјална датотека .htaccess, со која може да се зададе пренасочување.

За ова, во коренот на вашата веб-страница треба да поставите датотека .htaccess со следнава содржина:

RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.html [QSA,L]

Направете проект со React Router.

Поставете го на хостинг. Уверете се, дека стандардно рутирањето не работи.

Решете го проблемот со помош на датотеката .htaccess.

Македонски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние користиме колачиња за работата на веб-страната, анализа и персонализација. Обработката на податоци се врши во согласност со Политиката за приватност.
прифати ги сите прилагоди одбиј