10 of 10 menu

React Router kwenye Hosting ya PHP

Kama unavyojua tayari, baada ya kukusanya mradi wa React unawakilisha nyenzo tuli za kawaida, ambazo zinaweza kupakiwa kwenye hosting yoyote, na zitaanza kufanya kazi mara moja huko.

Hata hivyo, kuna tatizo na React Router. Jambo ni kwamba Router wakati wa kufanya kazi hubadilisha URL ya kurasa kwenye kivinjari. Wakati huo huo, ukweli halisi ukurasa haupakiwi upya, lakini tu URL hubadilika kwa njia za JavaScript.

Kwenye tovuti iliyowekwa kwenye hosting, Router itafanya kazi. Lakini, ikiwa uko kwenye ukurasa fulani wa tovuti, isipokuwa ukurasa wa kwanza, na ukapakia upya, utapata hitilafu ya 404.

Na hii ni mantiki, kwani kivinjari kitafta faili kwa URL iliyobainishwa, kama kawaida tovuti tuli hufanya kazi. Na katika programu yetu hakuna ukurasa kama huo, kwani sisi tu tunafanana, na kwa kweli programu yote yetu inafanya kazi kwenye index.html.

Ili kutatua tatizo, inahitajika kufanya hivi, ili URL zote, ambazo hazikuelekezi kwenye faili zilizopo kweli, zielekezwe kwenye index.html. Hii inafanywa kwa njia za seva ya wavuti, inayofanya kazi kwenye hosting.

Hosting za virtual hufanya kazi kwenye PHP. Kwa kawaida Apache hutumika kama seva. Ndani yake inapatikana faili maalum .htaccess, ambayo kwa kutumia hiyo unaweza kubainisha uelekezaji upya.

Ili kufanya hivyo, kwenye mzizi wa tovuti yako unahitaji kuweka faili .htaccess na yaliyomo yafuatayo:

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

Fanya mradi na React Router.

Pakta kwenye hosting. Hakikisha kwamba kwa chaguo-msingi routing haifanyi kazi.

Sahihisha tatizo kwa kutumia faili .htaccess.

nlittrruhi