स्टैटिक साइट: फ़ाइल से डोमेन तक
लैंडिंग पेज या React या Vue बिल्ड का पूरा रास्ता: VPS पर फ़ाइल अपलोड करें, वेब सर्वर से सर्व करें, डोमेन जोड़ें, और डाउनटाइम के बिना अपडेट करें।
23 अगस्त 2026 को अपडेट किया गया
स्टैटिक साइट तैयार फ़ाइलों का एक सेट है: HTML, CSS, इमेज, फ्रंटएंड बिल्ड। इसे न PHP चाहिए, न डेटाबेस, इसलिए यह VDS-1 पर भी आराम से चलती है और अच्छा-खासा ट्रैफ़िक संभाल लेती है: 500 Mbit/s तक।
फ़ाइलें कहाँ रखें
हर साइट के लिए अलग डायरेक्टरी बनाएँ:
mkdir -p /var/www/example.ru
chown -R www-data:www-data /var/www/example.ru
अपनी लोकल मशीन से सादे scp या rsync से अपलोड करें:
scp -r ./dist/* root@YOUR_ADDRESS:/var/www/example.ru/
rsync -avz --delete ./dist/ root@YOUR_ADDRESS:/var/www/example.ru/
rsync --delete सर्वर पर उन फ़ाइलों को हटा देता है जो अब बिल्ड में नहीं हैं। इसके बिना पुराने JS चंक सालों तक पड़े रहते हैं।
वेब सर्वर से सर्व करना
न्यूनतम Nginx कॉन्फ़िग:
server {
listen 80;
server_name example.ru;
root /var/www/example.ru;
index index.html;
location / {
try_files $uri $uri/ /index.html;
}
location ~* \.(js|css|png|jpg|svg|woff2)$ {
expires 30d;
add_header Cache-Control "public, immutable";
}
}
try_files ... /index.html लाइन React, Vue और Svelte पर बने सिंगल-पेज एप्लिकेशन के लिए ज़रूरी है: इसके बिना सीधे /about पर जाने पर 404 आता है।
इसके बाद Let's Encrypt सर्टिफ़िकेट लगाएँ, और साइट HTTPS पर खुलने लगेगी।
डोमेन
डोमेन पैनल में मशीन के पब्लिक एड्रेस पर पॉइंट करता एक A रिकॉर्ड बनाएँ (/hosting/vds/m/<id> में “Overview” टैब) और www के लिए भी वही रिकॉर्ड। जाँचें:
dig +short example.ru
रिकॉर्ड्स को फैलने में कुछ घंटे तक लग सकते हैं। जब तक इंतज़ार करें, साइट मशीन के एड्रेस पर खुलती रहेगी।
बिना डाउनटाइम अपडेट करना
लाइव डायरेक्टरी के ऊपर फ़ाइलें अपलोड न करें — विज़िटर को आधी बनी साइट दिख सकती है। साथ-साथ बिल्ड करें और सिमलिंक स्विच करें:
rsync -avz ./dist/ /var/www/releases/$(date +%s)/
ln -sfn /var/www/releases/1724400000 /var/www/example.ru-current
systemctl reload nginx
फिर कॉन्फ़िग में root /var/www/example.ru-current पर पॉइंट करता है।
आम गलतियाँ
| लक्षण | कारण |
|---|---|
| खाली पेज, कंसोल में JS पर 404 | फ़ाइलें गलत base से बिल्ड हुई हैं — अपनी बंडलर सेटिंग्स देखें |
| कुछ विज़िटर्स को पुराना वर्शन | ब्राउज़र कैश — हैश वाले फ़ाइल नाम इस्तेमाल करें |
| हर चीज़ पर 403 | डायरेक्टरी वेब सर्वर यूज़र के लिए पढ़ने योग्य नहीं है |
| सिर्फ़ होम पेज चलता है | सिंगल-पेज एप्लिकेशन के लिए try_files नहीं है |
फ्रंटएंड लोकली बिल्ड करके तैयार
distअपलोड करना बेहतर है। 2 GB मेमोरी वाले VDS-1 पर बड़ा प्रोजेक्ट बिल्ड करते समय मेमोरी की कमी से बिल्ड फेल हो सकता है।