Skip to main content
CheckTown
जेनरेटर

Nginx कॉन्फ़िग जेनरेटर: सर्वर कॉन्फ़िगरेशन बनाएँ

प्रकाशित 5 मिनट का पठन
इस लेख में

Nginx कॉन्फ़िग जनरेटर क्यों इस्तेमाल करें

Nginx सबसे व्यापक रूप से तैनात वेब सर्वर और रिवर्स प्रॉक्सी है, जो सभी वेबसाइटों के एक तिहाई से ज़्यादा को चलाता है। इसका कॉन्फ़िगरेशन सिंटैक्स शक्तिशाली है, पर ज़रा-सी चूक बर्दाश्त नहीं करता — एक भी गलत जगह लगा सेमीकॉलन या गलत डायरेक्टिव नेस्टिंग सर्वर को शुरू होने से रोक देता है। शुरुआत से कॉन्फ़िग लिखने का मतलब है SSL/TLS, प्रॉक्सीइंग, कैशिंग, कंप्रेशन, सिक्योरिटी हेडर और रेट लिमिटिंग के दर्जनों डायरेक्टिव को संभालना, वह भी सिंटैक्स को सही रखते हुए।

एक Nginx कॉन्फ़िग जनरेटर आपकी ज़रूरतों के अनुसार एक मान्य, प्रोडक्शन-स्तर का कॉन्फ़िगरेशन तैयार करता है। चाहे आपको एक सरल स्टैटिक फ़ाइल सर्वर चाहिए हो, किसी Node.js एप्लिकेशन के लिए रिवर्स प्रॉक्सी, आधुनिक साइफ़र सूट के साथ SSL टर्मिनेशन, या कई बैकएंड में ट्रैफ़िक बाँटने वाला लोड बैलेंसर — जनरेटर सही सर्वर ब्लॉक बनाता है, जिनमें सुरक्षा संबंधी डिफ़ॉल्ट पहले से लागू होते हैं। इससे अनुमान लगाने की ज़रूरत खत्म होती है और उन गलत कॉन्फ़िगरेशन का जोखिम घटता है जो आपके एप्लिकेशन को खतरे में डाल सकते हैं।

Nginx कॉन्फ़िग जनरेटर का उपयोग कैसे करें

CheckTown का Nginx कॉन्फ़िग जनरेटर आपके इनपुट से पूरे सर्वर ब्लॉक कॉन्फ़िगरेशन बनाता है।

  • अपना सर्वर प्रकार चुनें — स्टैटिक फ़ाइल होस्टिंग, रिवर्स प्रॉक्सी, लोड बैलेंसर, या केवल रीडायरेक्ट — ताकि सही टेम्पलेट संरचना मिले
  • अपने डोमेन नाम, लिसनिंग पोर्ट, SSL सर्टिफ़िकेट पथ और ज़रूरत के अनुसार अपस्ट्रीम बैकएंड पते कॉन्फ़िगर करें
  • gzip कंप्रेशन, सिक्योरिटी हेडर, रेट लिमिटिंग, कैशिंग और कस्टम एरर पेज जैसी वैकल्पिक सुविधाएँ चालू करें
  • बनाए गए कॉन्फ़िग को कॉपी करें, उसे अपने सर्वर पर सेव करें (आमतौर पर /etc/nginx/sites-available/), sites-enabled में एक सिमलिंक बनाएँ और Nginx को रीलोड करें

निःशुल्क आज़माएँ — कोई साइनअप आवश्यक नहीं

Nginx कॉन्फ़िग बनाएँ →

Nginx कॉन्फ़िगरेशन के सुझाव

एक ठोस Nginx कॉन्फ़िगरेशन परफ़ॉर्मेंस, सुरक्षा और रखरखाव के बीच संतुलन बनाता है। ये सुझाव आपको अपने सर्वर सेटअप से अधिकतम लाभ लेने में मदद करते हैं।

  • रीलोड करने से पहले हमेशा nginx -t से अपना कॉन्फ़िगरेशन जाँचें — इससे चालू ट्रैफ़िक को प्रभावित किए बिना सिंटैक्स की गलतियाँ पकड़ी जाती हैं
  • बड़े कॉन्फ़िग को संभालने लायक फ़ाइलों में बाँटने के लिए include डायरेक्टिव इस्तेमाल करें — SSL सेटिंग्स, सिक्योरिटी हेडर और प्रॉक्सी पैरामीटर को पुनः उपयोग योग्य स्निपेट में अलग करें
  • प्रॉक्सी कनेक्शन के लिए उपयुक्त टाइमआउट सेट करें — proxy_connect_timeout, proxy_read_timeout और proxy_send_timeout आपके एप्लिकेशन के व्यवहार से मेल खाने चाहिए ताकि समय से पहले कनेक्शन न टूटे

अक्सर पूछे जाने वाले सवाल

Nginx के साथ HTTPS कैसे सेट करें?

आपको एक SSL सर्टिफ़िकेट और प्राइवेट की चाहिए। अपनी सर्टिफ़िकेट फ़ाइलों की ओर इशारा करते हुए ssl_certificate और ssl_certificate_key डायरेक्टिव जोड़ें, ssl पैरामीटर के साथ पोर्ट 443 पर लिसन करें, और पोर्ट 80 के ट्रैफ़िक को HTTPS पर रीडायरेक्ट करें। जनरेटर यह कॉन्फ़िगरेशन अपने आप बनाता है, जिसमें आधुनिक TLS सेटिंग्स और अनुशंसित साइफ़र सूट शामिल हैं। मुफ़्त सर्टिफ़िकेट के लिए Certbot के साथ Let's Encrypt का उपयोग करें, जो Nginx को अपने आप कॉन्फ़िगर भी कर सकता है।

Nginx में रिवर्स प्रॉक्सी और लोड बैलेंसर में क्या अंतर है?

एक रिवर्स प्रॉक्सी क्लाइंट के अनुरोधों को एक ही बैकएंड सर्वर तक अग्रेषित करता है। एक लोड बैलेंसर अनुरोधों को upstream ब्लॉक में परिभाषित कई बैकएंड सर्वरों में बाँटता है। दोनों proxy_pass डायरेक्टिव का उपयोग करते हैं, लेकिन लोड बैलेंसर किसी upstream समूह के नाम की ओर इशारा करता है जबकि रिवर्स प्रॉक्सी सीधे बैकएंड पते की ओर। लोड बैलेंसर round-robin, least connections और IP hash जैसे विभिन्न वितरण एल्गोरिद्म का समर्थन करते हैं।

मैं gzip कंप्रेशन कैसे चालू करूँ?

अपने http या server ब्लॉक में gzip on जोड़ें, फिर gzip_types के साथ बताएँ कि किन कंटेंट प्रकारों को कंप्रेस करना है। सामान्य प्रकारों में text/plain, text/css, application/json, application/javascript और text/xml शामिल हैं। छोटे रिस्पॉन्स को छोड़ने के लिए gzip_min_length सेट करें (1024 बाइट एक उचित न्यूनतम है) और कंप्रेशन अनुपात व CPU उपयोग के बीच संतुलन बनाने के लिए gzip_comp_level सेट करें — स्तर 4 या 5 आमतौर पर सर्वोत्तम रहता है।

संबंधित टूल