PHP hostingde React Router

Bilşiňiz ýaly, ýygnanandan soň React taslamasy adaty statika bolup, ony haýsy-da bolsa bir hostinge ýüklemek mümkin, we ol ýerde derrew işleýär.

Emma, React Router bilen bir masalah bar. Mesele şonda, Router işleýän wagtynda brauzerdaky sahypalaryň URL-ni üýtgedýär. Bu ýagdaýda sahypa hakykyýetde gaýtadan ýüklenmeýär, diňe JavaScript gurallary bilen URL üýtgeýär.

Hostinge goýlan saýtda, Router işleýär. Ýöne, baş sahypadan başga haýsy-da bolsa bir sahypada durup, ony gaýtadan ýükläniňizde, 404 ýalňyşlygy görkeziler.

Bu mantiqly, sebäbi brauzer görkezilen URL boýunça faýly gözler, statiki saýtlar nädip işleýän bolsa şonuň ýaly. Işimizde bolsa, şeýle sahypa bolmaz, sebäbi biz diňe olary taklid edýäris, hakykatda bolsa tutuş taslamamyz index.html faýlynda işleýär.

Bu meseläni çözmek üçin şunuň ýaly etmeli, hakyky ýerleşýän faýllara getirmän, ähli URL-ler index.html faýlyna ýöneltilmeli. Bu hostingde işleýän web-serwer gurallary bilen amala aşyrylýar.

Wirtual hostingler PHP-de işleýär. Adatça, serwer hökmünde Apache ulanylýar. Onda ýörite .htaccess faýly elýeterli, onyň kömegi bilen ýöneltme belgip bolýar.

Bunuň üçin saýtyňyzyň kökündäki .htaccess faýlyny aşakdaky mazmunda ýerleşdirmeli:

.htaccessRewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.html [QSA,L]
Задание 1

React Router bilen taslama düzüň.

Задание 2

Ony hostinge ýükläň. Router-iň bellenen ýagdaýda işlemeýändigine göz ýetiriň.

Задание 3

.htaccess faýlynyň kömegi bilen meseläni çözüň.