Web Server
Web Server एक ऐसा प्रोग्राम होता है जो वेबपेज सर्व करता है, अर्थात वह सॉफ्टवेयर जो वेब पेजों को यूजर तक पहुंचाता है वेब सर्वर कहलाता है । इसे दो भागों में बांटा जा सकता है, पहला वह मशीन जिस पर वेब सर्वर को स्थापित किया जाता है और दूसरा सॉफ्टवेयर जो वेब सर्वर की तरह काम करता है। सामान्यतया वेब पेज HTTP प्रोटोकॉल द्वारा यूजर तक पहुंचाये जाते है। यूजर किसी भी कंप्यूटर में वेब सर्वर सॉफ्टवेयर को इनस्टॉल करके एवं उसे इंटरनेट से जोड़ कर, इन्टरनेट पर वेब पेज प्रोवाइड करने वाले वेब सर्वर में बदल सकता हैं। यूजर इन्टरनेट पर जो भी वेब पेज देखता है वे उनके कंप्यूटर पर किसी ना किसी वेब सर्वर के द्वारा ही पहुंचाये जाते हैं। यदि यूजर अपने कंप्यूटर पर केवल सॉफ्टवेयर इनस्टॉल करें और उसे इंटरनेट से कनेक्ट ना करे तो भी यह वेब सर्वर कहलायगा लेकिन यह सर्वर लोकल लेवल पर ही यूजर के किये कार्य करेगा |
एक कम्प्यूटर जो web page को भेजता (deliver) है, वेब सर्वर (Web Server) कहलाता है। प्रत्येक वेब सर्वर का एक IP एड्रेस होता है तथा एक डॉमेन नेम होता है। उदाहरण के लिए, यदि आप अपने ब्राउजर में http://www.compterhindinotes.com/index.html नामक URL इंटर करते हैं, तो यह सर्वर को रिक्वेस्ट भेजता है जिसका डोमेन नेम compterhindinotes.com है,तब सर्वर index.html नामक page को निकालता है तथा आपके ब्राउजर को भेज देता है।
कोई भी कम्प्यूटर, वेब सर्वर में परिवर्तित हो जाता है, जबकि उसमें सर्वर सॉफ्टवेयर इन्स्टॉल हो तथा वह internet से कनेक्ट (connect) हो। ऐसी बहुत सी वेब सर्वर ऐप्लीकेशन्स हैं जो NCSA एवं Apache के पब्लिक डॉमेन सॉफ्टवेयर रखती हैं तथा माइक्रोसॉफ्ट के व्यवसायिक पैकेजेज़, Netscape एवं अन्य और भी हैं।
Features of Web-Server
- HTTP : HTTP यानी Hyper Text Transfer Protocol एक एप्लीकेशन protocol है जिसका इस्तेमाल इन्टरनेट के जरिये hyper media या hyper text भेजने के लिए किया जाता है। इसके जरिये client browser एप्लीकेशन के द्वारा server से डाटा को ट्रान्सफर कर पाते है। HTTP protocol के कारण ही client और server के बीच connection बन पाता है। HTTP protocol का इस्तेमाल करके ही हम वर्ल्ड वाइड वेब के जरिये डाटा भेज पाते है।हम इन्टरनेट के जरिये जितनी websites और डाटा खोलते है या download करते है वो सभी HTTP कीवजह से ही संभव हो पता है। HTTP वर्ल्ड वाइड web का आधार (base) है| HTTP डाटा ट्रान्सफर करने के लिए port 80 का इस्तेमाल करता है। HTTP अधिकतर इस्तेमाल होने वाले protocols में से एक जिसका इस्तेमाल करके हम आजकल technology की सबसे अनोखी देन इन्टरनेट का इस्तेमाल कर पाते हैं HTTP protocol HTTPS protocol का base है इसलिए HTTPS का इसके बिना कोई अस्तित्व नहीं।प्रत्येक वेब सर्वर प्रोग्राम client से HTTP रिक्वेस्ट प्राप्त करके ऑपरेट होता है तथा client को एक HTTP रिस्पांस उपलब्ध कराता है।एक (response) सामान्यत: एक HTML या XHTML डॉक्यूमेंट को रखता है तथापि एक raw file,एक इमेज या कुछ अन्य प्रकार का डॉक्यूमेंट्स (MJME – प्रकार द्वारा परिभाषित) हो सकता है। यदि client request में कुछ error प्राप्त होती है, तब वेब सर्वर एक त्रुटि जवाब भेजता है, जो कुछ कस्टम HTML या टैक्स्ट मैसेज रखता है। ये समस्या को अंतिम (end) यूजर के लिए उचित प्रकार से व्याख्या करते हैं।
- लॉगिन (Logging) : वेब सर्वर में, client requests तथा लॉग फाइल्स के लिए सर्वर रेस्पॉन्स के बारे में विस्तृत जानकारी को लॉगिंग करने की भी क्षमता होती है। यह वेब मास्टर को इन फाइल्स पर लॉग एनॉलाइजर (Log analyzer) चलाकर डाटा कलेक्ट करने की परमीशन देता है।
कई वेब सर्वर निम्नलिखित विशेषताँए भी एक्सीक्यूट करते हैं :
- Authentication : कुछ या सभी रिसोर्सेज को एक्सेस करने से पहले Authentication के लिए अतिरिक्त ऑथराईजेशन रिक्वेस्ट (Authorization request) की जाती है- जैसे (यूजर नेम और पासवर्ड)
- Handling : एक या एक से अधिक रिलेटिड इंटरफेस (SSI, CGI, SCGI, FastCGI, JSP, ColdFusion, PHP, ASP, ASP.NET, Server API जैसे – NSAPI, ISAPI, इत्यादि) के सपोर्ट द्वारा static contents तथा dynamic contents की हैंडलिंग करता है ।
- Security : HTTPS, सामान्य पोर्ट 80 के स्थान पर स्टैंडर्ड पोर्ट 443 पर सुरक्षित (secure or encrypted) कनेक्शन्स की परमीशन को सपोर्ट करता है।
- Content compression: रेस्पॉन्स के साइज़ को घटाता है।
- Virtual Hosting : एक IP एड्रेस के निर्माण द्वारा कई वेब साईट्स को सर्व करना।
- Large File Support : 32 बिट OS पर 2GB से अधिक आकार वाली फाइल्स को सर्व करने योग्य बनाना।
- Bandwidth throttling : रेस्पॉन्स की स्पीड को सीमित करना ताकि नेटवर्क संतृप्त (saturated) न हो और अधिक क्लाइन्ट को सर्व करने में सक्षम रहे।