10 of 10 menu

PHP होस्टिंग पर React Router

जैसा कि आप पहले से ही जानते हैं, बिल्ड करने के बाद React प्रोजेक्ट सामान्य स्टैटिक फाइलों का एक समूह होता है, जिसे किसी भी होस्टिंग पर अपलोड किया जा सकता है, और वह तुरंत काम करने लगेगा।

हालाँकि, React Router के साथ एक समस्या है। बात यह है कि Router काम करते समय ब्राउज़र में पेजों का URL बदल देता है। इसके बावजूद, पेज वास्तव में रीलोड नहीं होता, बल्कि केवल JavaScript के माध्यम से URL बदलता है।

होस्टिंग पर डाले गए साइट में, 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 फाइल की मदद से समस्या को ठीक करें।

uzdeptfrkk