13. होस्टिंग और वेब एप्लिकेशन के लिए अपना Ubuntu सर्वर सेट अप करना: अंतिम मार्गदर्शिका

परिचय: होस्टिंग और वेब एप्लिकेशन के लिए अपना Ubuntu सर्वर सेट अप करना

Ubuntu Server एक मज़बूत और लचीला ऑपरेटिंग सिस्टम है, जिस पर डेवलपर और सिस्टम एडमिनिस्ट्रेटर होस्टिंग और वेब एप्लिकेशन परिनियोजन के लिए व्यापक रूप से भरोसा करते हैं। चाहे आप वेबसाइट होस्ट करने के लिए सर्वर सेट अप कर रहे हों, क्लाउड-आधारित सेवाओं का प्रबंधन कर रहे हों, या आधुनिक वेब एप्लिकेशन परिनियोजित कर रहे हों, Ubuntu Server वह विश्वसनीयता, मापनीयता और टूल प्रदान करता है, जिनकी आपको सफलता के लिए आवश्यकता है।

इस मार्गदर्शिका में, हम आपको होस्टिंग और वेब एप्लिकेशन वातावरण के लिए अपने Ubuntu सर्वर को कॉन्फ़िगर करने के आवश्यक चरणों से अवगत कराएँगे। वेब सर्वर (Apache या Nginx) सेट अप करने से लेकर SSL से अपनी साइट को सुरक्षित करने और उत्पादन के लिए प्रदर्शन अनुकूलित करने तक, यह लेख आपको एक पूर्णतः कार्यात्मक सर्वर बनाने में मदद करेगा, जो आपकी होस्टिंग और एप्लिकेशन आवश्यकताओं को पूरा करने के लिए तैयार है।


पिछले लेख:

01. Ubuntu Server का परिचय – SysOSX: AI & Cloud

02. अपना पहला Ubuntu सर्वर कैसे सेट अप करें: शुरुआती मार्गदर्शिका – SysOSX: AI & Cloud

03.Ubuntu Server के लिए Linux कमांड लाइन में महारत – SysOSX: AI & Cloud

04. Ubuntu Server पर उपयोगकर्ता और अनुमतियों का प्रबंधन: एक व्यापक मार्गदर्शिका – SysOSX: AI & Cloud

05. Ubuntu Server के लिए नेटवर्किंग की मूल बातें: एक व्यापक मार्गदर्शिका – SysOSX: AI & Cloud

06. Ubuntu Server पर सॉफ़्टवेयर इंस्टॉल और प्रबंधित करना: एक संपूर्ण मार्गदर्शिका – SysOSX: AI & Cloud

07.Ubuntu Server को पैच करना और अपडेट करना: एक व्यापक मार्गदर्शिका – SysOSX: AI & Cloud

08. अपने Ubuntu सर्वर को सुरक्षित करना: हार्डनिंग और सुरक्षा के लिए व्यावहारिक चरण – SysOSX: AI & Cloud

09. Ubuntu सर्वर ऑडिटिंग और लॉगिंग

10. Ubuntu Server के लिए सिस्टम मॉनिटरिंग टूल: एक व्यापक मार्गदर्शिका – SysOSX: AI & Cloud

11. Ubuntu सर्वर के लिए केंद्रीकृत लॉगिंग: अवश्य पढ़ी जाने वाली मार्गदर्शिका – SysOSX: AI & Cloud

12. Ubuntu Server के लिए ऑडिट और अनुपालन: सर्वोत्तम प्रथाएँ – SysOSX: AI & Cloud



📋 पूर्वापेक्षा जाँच सूची

  • Ubuntu Server 22.04 LTS (या नया)
  • sudo विशेषाधिकारों के साथ टर्मिनल एक्सेस
  • डोमेन नाम (SSL के लिए अनुशंसित)
  • Linux कमांड का बुनियादी ज्ञान
  • न्यूनतम 1GB RAM (2GB अनुशंसित)

🛠 प्रारंभिक सर्वर सेटअप

# Update system packages
sudo apt update && sudo apt upgrade -y

# Install essential tools
sudo apt install -y curl wget

🔥 फ़ायरवॉल कॉन्फ़िगरेशन

सेवाअनुमत पोर्टकमांड
Apache80, 443sudo ufw allow 'Apache Full'
Nginx80, 443sudo ufw allow 'Nginx Full'
SSH22sudo ufw allow OpenSSH

फ़ायरवॉल सक्षम करें: sudo ufw enable


🌐 वेब सर्वर तुलना

विशेषताApacheNginx
आर्किटेक्चरप्रक्रिया-चालितइवेंट-चालित
के लिए सर्वोत्तमपारंपरिक वेब ऐपउच्च ट्रैफ़िक/स्थिर सामग्री
कॉन्फ़िगरेशन सिंटैक्स.htaccess फ़ाइलेंसर्वर ब्लॉक
प्रदर्शनअच्छाउत्कृष्ट
SSL सेटअपmod_sslOpenSSL

🐧 Apache सेटअप मार्गदर्शिका

1. Apache इंस्टॉल करें

sudo apt install apache2 -y

2. वर्चुअल होस्ट कॉन्फ़िगरेशन

फ़ाइल: /etc/apache2/sites-available/yourdomain.conf

<VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName yourdomain.com
    DocumentRoot /var/www/yourdomain
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

कॉन्फ़िगरेशन सक्षम करें:

sudo a2ensite yourdomain.conf
sudo systemctl reload apache2

🚀 Nginx सेटअप मार्गदर्शिका

1. Nginx इंस्टॉल करें

sudo apt install nginx -y

2. सर्वर ब्लॉक कॉन्फ़िगरेशन

फ़ाइल: /etc/nginx/sites-available/yourdomain

server {
    listen 80;
    server_name yourdomain.com www.yourdomain.com;
    root /var/www/yourdomain;
    
    location / {
        try_files $uri $uri/ =404;
    }
}

कॉन्फ़िगरेशन सक्षम करें:

sudo ln -s /etc/nginx/sites-available/yourdomain /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx

🔒 Let’s Encrypt के साथ SSL सेटअप

Apache के लिए:

sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache --agree-tos -m [email protected] -d yourdomain.com

Nginx के लिए:

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx --agree-tos -m [email protected] -d yourdomain.com

स्वतः नवीनीकरण परीक्षण:

sudo certbot renew --dry-run

🧪 सत्यापन परीक्षण

  1. HTTP स्थिति जाँच: curl -I http://yourdomain.com
  2. SSL सत्यापन: openssl s_client -connect yourdomain.com:443
  3. सर्वर हेडर जाँच: curl -I | grep "Server"

🚨 समस्या निवारण सुझाव

  • अनुमति समस्याएँ: sudo chown -R www-data:www-data /var/www/yourdomain
  • पोर्ट विरोध: sudo lsof -i :80
  • कॉन्फ़िगरेशन त्रुटियाँ: sudo journalctl -xe
  • SSL नवीनीकरण: sudo certbot renew --force-renewal

📚 आवश्यक संसाधन

  1. Apache सुरक्षा हार्डनिंग मार्गदर्शिका
  2. Nginx प्रदर्शन ट्यूनिंग
  3. Let’s Encrypt दस्तावेज़ीकरण
  4. Ubuntu Server सुरक्षा

💡 प्रो टिप्स

  • सेवा प्रबंधन के लिए systemd का उपयोग करें:
sudo systemctl [start|stop|restart|status] apache2/nginx
  • बेहतर प्रदर्शन के लिए HTTP/2 सक्षम करें
  • निम्न के साथ स्वचालित बैकअप सेट अप करें: rsync
  • ट्रैफ़िक की निगरानी के लिए इनका उपयोग करें: goaccess या ngxtop

अंतिम सिफारिश:
अधिकांश उपयोगकर्ताओं के लिए, Nginx बॉक्स से बाहर बेहतर प्रदर्शन प्रदान करता है, जबकि Apache .htaccess फ़ाइलों के माध्यम से अधिक लचीलापन प्रदान करता है। अपनी विशिष्ट एप्लिकेशन आवश्यकताओं के आधार पर चुनें।

अगले लेख के लिए बने रहें

हमारे अगले लेख में, हम इस विषय में गहराई से जाएँगे एक ही Ubuntu सर्वर पर कई वेबसाइट होस्ट करना! एक ही Ubuntu सर्वर पर कई वेबसाइट होस्ट करना डेवलपर, छोटे व्यवसायों और शौकीनों के लिए एक लागत प्रभावी समाधान है। अगले लेख में मैं आपको वर्चुअल होस्ट को Apache और Nginx को सेट अप करके एक ही सर्वर पर कई वेबसाइट होस्ट करने की प्रक्रिया समझाऊँगा।

3 thoughts on “13.Setting Up Your Ubuntu Server for Hosting and Web Applications: Ultimate Guide”

टिप्पणी छोड़ें