मैं Intlayer के साथ /[locale]/ पथों के बजाय डोमेन-आधारित रूटिंग कैसे कॉन्फ़िगर करूं?
संक्षिप्त उत्तर
डोमेन-आधारित रूटिंग पथ-आधारित रूटिंग (example.com/[locale]/) की तुलना में सरल है क्योंकि आप सभी मिडलवेयर और रूटिंग कॉन्फ़िगरेशन को छोड़ सकते हैं। बस अपने ऐप को प्रत्येक भाषा डोमेन पर तैनात करें और प्रत्येक डोमेन के लिए एक पर्यावरण चर सेट करें।
चरण-दर-चरण
- प्रत्येक डोमेन पर एक बार तैनात करें (
example.com,exemple.fr,ejemplo.es, …)। - प्रत्येक तैनाती के लिए,
LOCALE(और सामान्य Intlayer पर्यावरण चर) को उस लोकेल पर सेट करें जिसे डोमेन सेवा देना चाहिए। - उस चर को अपने
intlayer.config.[ts|js]मेंdefaultLocaleके रूप में संदर्भित करें।
कोड को क्लिपबोर्ड पर कॉपी करें
बस इतना ही-यह Next.js, Vite + React, Vite + Vue, आदि के लिए समान रूप से काम करता है।
अगर हर डोमेन एक ही तैनाती को हिट करता है तो क्या होगा?
यदि सभी डोमेन एक ही एप्लिकेशन बंडल की ओर इशारा करते हैं, तो आपको रनटाइम पर होस्ट का पता लगाना होगा और प्रदाता के माध्यम से लोकेल को मैन्युअल रूप से पास करना होगा।
Next.js के लिए
कोड को क्लिपबोर्ड पर कॉपी करें
Vue के लिए
कोड को क्लिपबोर्ड पर कॉपी करें
getLocaleFromHostname() को अपनी खुद की खोज लॉजिक से बदलें।
अपने लोकेल स्विचर को अपडेट करें
डोमेन-आधारित रूटिंग का उपयोग करते समय, भाषाओं को बदलना दूसरे डोमेन पर नेविगेट करने का मतलब होता है:
कोड को क्लिपबोर्ड पर कॉपी करें
डोमेन-आधारित रूटिंग के लाभ
- सरल कॉन्फ़िगरेशन:
intlayerProxy,generateStaticParams,react-router, याvue-routerको कॉन्फ़िगर करने की आवश्यकता नहीं - बेहतर SEO: प्रत्येक भाषा का अपना डोमेन होता है
- साफ-सुथरे URL: पथ में कोई लोकेल उपसर्ग नहीं होता
- आसान रखरखाव: प्रत्येक भाषा की तैनाती स्वतंत्र होती है