संपादित 5 महीने पहले द्वारा ExtremeHow संपादकीय टीम
फेडोराएनजिनएक्सस्थापनावेब सर्वरकॉन्फ़िगरेशनसॉफ्टवेयरकमांड लाइनटर्मिनलहोस्टिंगकंप्यूटर
अनुवाद अपडेट किया गया 5 महीने पहले
इस गाइड का उद्देश्य आपको फेडोरा सिस्टम पर Nginx इंस्टॉल और कॉन्फ़िगर करने में मदद करना है। Nginx एक लोकप्रिय ओपन-सोर्स वेब सर्वर है जो अपने उच्च प्रदर्शन, स्थिरता और कम संसाधन खपत के लिए जाना जाता है। यह बड़ी संख्या में कॉन्करेंट कनेक्शनों को संभालने में सक्षम है, जो इसे कई डेवलपर्स के लिए पसंदीदा विकल्प बनाता है। इस गाइड के अंत तक, आपके पास एक कार्यशील Nginx इंस्टॉलेशन होगा जो वेब सामग्री सेवा के लिए तैयार होगा।
इंस्टॉलेशन शुरू करने से पहले, सुनिश्चित करें कि आपका सिस्टम नवीनतम संस्करण पर अपडेट है। अपडेट करने से यह सुनिश्चित होता है कि आपको सभी पैकेजों, सहित Nginx, के लिए नवीनतम फीचर्स और सुरक्षा फिक्सेस मिलें।
अपने सिस्टम को अपडेट करने के लिए, एक टर्मिनल खोलें और निम्नलिखित कमांड चलाएँ:
sudo dnf update -y
-y
फ्लैग अपडेट प्रक्रिया के दौरान स्वचालित रूप से 'हां' का उत्तर देता है। अपडेट के पूरा होने के बाद, Nginx को इंस्टॉल करने के लिए आगे बढ़ें।
फेडोरा का पैकेज मैनेजर, DNF, Nginx को इसके रिपॉजिटरीज़ से इंस्टॉल करने के लिए इस्तेमाल किया जा सकता है। इंस्टॉलेशन प्रक्रिया सरल है।
अपने टर्मिनल में निम्नलिखित कमांड दर्ज करें:
sudo dnf install nginx -y
यह कमांड DNF को रिपॉजिटरी में उपलब्ध Nginx के नवीनतम संस्करण को इंस्टॉल करने के लिए बताता है। यदि संकेत दिया गया है, तो स्थापना प्रक्रिया को अधिकृत करने के लिए अपना पासवर्ड दर्ज करें। जैसे ही खत्म होगा, Nginx आपके सिस्टम पर इंस्टॉल हो जाएगा परंतु अभी तक शुरू नहीं होगा।
इंस्टॉलेशन के बाद, आप Nginx सेवा को शुरू करना चाहेंगे और सुनिश्चित करेंगे कि वो बूट पर स्वयं चलें।
Nginx को शुरू करने के लिए निम्नलिखित कमांड का उपयोग करें:
sudo systemctl start nginx
बूट पर Nginx को शुरू करने के लिए, उपयोग करें:
sudo systemctl enable nginx
यह सत्यापित करने के लिए कि Nginx चल रहा है, निष्पादित करें:
sudo systemctl status nginx
यदि सब कुछ सही सेटअप है, तो स्थिति कमांड Nginx को सक्रिय और चालू दिखाएगा।
Nginx का कॉन्फ़िगरेशन इसके कॉन्फ़िगरेशन फ़ाइलों के माध्यम से संभव है, जो मुख्य रूप से /etc/nginx/nginx.conf
पर स्थित हैं। यह फ़ाइल मुख्य सेटिंग्स को परिभाषित करती है, जिसमें उपयोगकर्ता अनुमतियाँ, त्रुटि लॉग, और वर्कर संपर्क शामिल हैं।
nginx.conf
फ़ाइल में कई निर्देशन होते हैं जो संदर्भों में व्यवस्थित होते हैं, जैसे मुख्य {}
, ईवेंट्स {}
, और http {}
। http
संदर्भ के अंदर, आपके पास server
ब्लॉक हो सकते हैं जो सर्वर-विशिष्ट कॉन्फ़िगरेशन को परिभाषित करते हैं।
एक मूलभूत सर्वर ब्लॉक इस प्रकार दिखाई दे सकता है:
server { listen 80; server_name example.com; location / { root /usr/share/nginx/html; index index.html index.htm; } }
यह ब्लॉक Nginx को 'example.com' के लिए अनुरोधों को पोर्ट 80 पर सुनने के लिए कहता है। root
निर्देशन यह निर्दिष्ट करता है कि HTML फ़ाइलें कहाँ संग्रहीत की जाती हैं, जबकि index
निर्देशन डिफ़ॉल्ट फ़ाइलों की सूची देता है जिन्हें सेवा दी जाती है।
Nginx वर्चुअल होस्ट की अवधारणा का उपयोग करके एकाधिक वेबसाइटों की होस्टिंग का समर्थन करता है। प्रत्येक साइट को कॉन्फ़िगरेशन फ़ाइल में server
ब्लॉक द्वारा परिभाषित किया गया है।
यहाँ एक ही सर्वर पर दो वर्चुअल होस्ट का एक उदाहरण है:
server { listen 80; server_name site1.com; location / { root /var/www/site1; index index.html; } } server { listen 80; server_name site2.com; location / { root /var/www/site2; index index.html; } }
प्रत्येक server_name
अलग वेबसाइट को संदर्भित करती है। 'site1.com' या 'site2.com' के लिए अनुरोधों को उनकी संबंधित root
निर्देशिका के अनुसार अलग सामग्री सेवा दी जाएगी।
कॉन्फ़िगरेशन फ़ाइलों को संपादित करने के बाद, उन्हें डिप्लॉइंग करने से पहले सिंटैक्स त्रुटियों के लिए परीक्षण करना आवश्यक है। आप इसे आसानी से कर सकते हैं:
sudo nginx -t
यदि कोई त्रुटि रिपोर्ट नहीं की जाती है, तो नई कॉन्फ़िगरेशन लागू करने के लिए Nginx सेवा को फिर से लोड करें:
sudo systemctl reload nginx
सुनिश्चित करें कि आपके फ़ायरवॉल सेटिंग्स Nginx को वेब पृष्ठों की सेवा के लिए HTTP और HTTPS ट्रैफ़िक की अनुमति देती हैं। इन सेवाओं की अनुमति देने के लिए निम्नलिखित फायरवॉल-सीएमडी कमांड का उपयोग करें:
sudo firewall-cmd --permanent --zone=public --add-service=http sudo firewall-cmd --permanent --zone=public --add-service=https sudo firewall-cmd --reload
SSL प्रमाणपत्रों के साथ Nginx को सुरक्षित करना सुरक्षा की एक परत प्रदान करता है जो आपके सर्वर और क्लाइंट्स के बीच प्रेषित डेटा को एन्क्रिप्ट करता है। आप Let’s Encrypt से मुफ़्त SSL प्रमाणपत्रों का उपयोग कर सकते हैं।
पहले, Let’s Encrypt के लिए Certbot टूल इंस्टॉल करें:
sudo dnf install certbot python3-certbot-nginx -y
Certbot का उपयोग करके प्रमाणपत्र प्राप्त करें:
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
सेटअप को पूरा करने और एक मान्य SSL प्रमाणपत्र स्थापित करने के लिए स्क्रीन पर दिखाए गए निर्देशों का पालन करें। Certbot स्वचालित रूप से आपके Nginx सर्वर ब्लॉक को SSL का उपयोग करने के लिए कॉन्फ़िगर करेगा।
Nginx लॉग्स ट्रैफ़िक की निगरानी और समस्याओं को हल करने के लिए महत्वपूर्ण हैं। एक्सेस लॉग क्लाइंट अनुरोध रिकॉर्ड करते हैं, जबकि त्रुटि लॉग Nginx सर्वर त्रुटियाँ स्टोर करते हैं।
डिफ़ॉल्ट रूप से, ये लॉग /var/log/nginx/
निर्देशिका में स्थित होते हैं:
Access Log: /var/log/nginx/access.log Error Log: /var/log/nginx/error.log
इन लॉग्स की जांच करने के लिए tail -f /var/log/nginx/access.log
जैसी कमांड का उपयोग करें ताकि आने वाले अनुरोधों को वास्तविक समय में देखा जा सके।
फेडोरा के लिए Nginx एक बहुमुखी और मजबूत वेब सर्वर समाधान है, जो एकाधिक साइटों की होस्टिंग और एक साथ बड़ी संख्या में क्लाइंट्स की सेवा करने में सक्षम है। इसके कॉन्फ़िगरेशन और बुनियादी संचालन को समझकर, आप अपने वेब सर्वर की जरूरतों को पूरा करने के लिए प्रभावी रूप से Nginx का लाभ उठा सकते हैं।
यदि आपको लेख की सामग्री में कुछ गलत लगता है, आप कर सकते हैं