"हाय, अमीगो!"

"नमस्कार, बिलाबो! आज हम क्या कर रहे हैं?"

"आज मैं आपको बताने जा रहा हूँ कि टॉमकैट वेब सर्वर कैसे स्थापित किया जाए।"

टॉमकैट -1 को स्थापित और कॉन्फ़िगर करें

"वेब सर्वर क्या है? नियमित सर्वर क्या है?"

"कार्यक्रमों के लिए क्लाइंट-सर्वर संबंध नामक बातचीत करने का एक तरीका है। सर्वर क्लाइंट अनुरोधों को पूरा करता है। ग्राहक सर्वर को अपने अनुरोध भेजते हैं, और सर्वर उन्हें पूरा करता है और परिणाम देता है।"

"एक स्टोर में ग्राहकों की सेवा करने वाले एक विक्रेता की कल्पना करें। इस मामले में, विक्रेता वास्तव में सर्वर है, स्टोर के ग्राहक ग्राहक हैं, और विक्रेता द्वारा बेचा गया उत्पाद अनुरोध को संसाधित करने का परिणाम है (सर्वर के काम का परिणाम) "

"दूसरे शब्दों में, एक सर्वर वह है जो ग्राहक के अनुरोधों/आदेशों/जरूरतों को पूरा करता है, है ना?"

"हाँ।"

"ठीक है, तो वेब सर्वर क्या है?"

"एक वेब सर्वर एक प्रोग्राम है जो उपयोगकर्ताओं के ब्राउज़रों से पृष्ठ अनुरोध करता है।"

"जब आप एक ब्राउज़र में एक विशिष्ट यूआरएल दर्ज करते हैं, तो अनुरोध सर्वर पर जाता है, सर्वर अनुरोध को संसाधित करता है, एक वेब पेज उत्पन्न करता है, और इसे ब्राउज़र पर वापस भेजता है।"

टॉमकैट -2 को स्थापित और कॉन्फ़िगर करें

"वेब सर्वर सर्वर है। ब्राउज़र क्लाइंट है। URL अनुरोध है। वेबपेज अनुरोध को संसाधित करने का परिणाम है।"

"आह। स्थिति धीरे-धीरे स्पष्ट हो रही है। दूसरे शब्दों में, एक वेब सर्वर एक प्रोग्राम (?) है जो ब्राउज़रों के लिए पेज बनाता है। है ना?"

"हाँ।"

"आइए एक सामान्य URL लें:"

पार्सिंग यूआरएल
http : // codegym.cc / alpha/api/contacts ? उपयोगकर्ता आईडी = 13 और फ़िल्टर = कोई नहीं और पृष्ठ = 3
एक यूआरएल के हिस्सों का विवरण
codegym.cc डोमेन नाम  इंटरनेट पर एक कंप्यूटर का अद्वितीय नाम (पता)  है 
http  क्लाइंट-सर्वर संचार के लिए प्रोटोकॉल  है 
अल्फा/एपीआई/संपर्क  वेब सर्वर अनुरोध या सर्वर पर वेबपृष्ठ के लिए अनुरोध है
userid=13 &filter=none & page=3  वेब सर्वर अनुरोध या सर्वर पर एक वेबपेज के लिए अनुरोध है

"इसे देखें। हम एक कंप्यूटर लेते हैं और इसे इंटरनेट से जोड़ते हैं।"

"फिर हम इसके लिए एक डोमेन नाम खरीदते हैं।"

"फिर हम उस पर एक वेब सर्वर चलाते हैं।"

"अब आप इस वेब सर्वर को इसके डोमेन नाम के साथ URL दर्ज करके किसी भी ब्राउज़र से अनुरोध भेज सकते हैं।"

"मुझे लगता है मुझे समझ में आ गया।"

"मैं सब कुछ थोड़ा स्पष्ट करने के लिए एक सादृश्य साझा करूँगा।"

URL वार्तालाप पार्स करना
हिन्दी : // जैसन / पास मी फोल्डर ? संख्या = 13
URL के भागों का विवरण
जेसन  इंटरनेट पर एक कंप्यूटर का अनूठा नाम है
क्लाइंट-सर्वर संचार के लिए अंग्रेजी प्रोटोकॉल  है
पास मी फोल्डर  वेब सर्वर रिक्वेस्ट है, या सर्वर पर वेबपेज के लिए रिक्वेस्ट है
संख्या = 13  अनुरोध पैरामीटर के साथ एक स्ट्रिंग है

"आह। यह वास्तव में स्पष्ट है। धन्यवाद।"

"इतना ही नहीं है। कभी-कभी कई वेब सर्वर एक ही कंप्यूटर पर चलते हैं। उन्हें अलग करने के लिए, उन्हें नंबर दिए जाते हैं।"

"एक इमारत के रूप में एक डोमेन के बारे में सोचें। यदि एक परिवार इमारत में रहता है, तो आप कुछ इस तरह लिखेंगे «5 तीसरा एंटी-मार्टियन विद्रोह सेंट»। उन्हें एक पत्र भेजते समय।"

"अब कल्पना कीजिए कि इमारत में कई परिवार रहते हैं।"

"एक अपार्टमेंट इमारत की तरह?"

"बिल्कुल सही! यह बहुत समान है। सादृश्य के लिए धन्यवाद।"

"इमारत के अंदर, कई अपार्टमेंट हैं। कुछ अपार्टमेंट खाली हैं। कुछ में वेब सर्वर का कब्जा है। और जब आप एक वेब सर्वर को एक अनुरोध भेजते हैं, तो आपको अपार्टमेंट नंबर भी निर्दिष्ट करना होगा। एक यूआरएल में, इस नंबर को कहा जाता है। पत्तन।"

"उदाहरण के लिए:"

http://codegym.cc:80 / alpha /api/ contacts ? उपयोगकर्ता आईडी = 13 और फ़िल्टर = कोई नहीं और पृष्ठ = 3
http://codegym.cc:8080 / alpha /api/ contacts ? उपयोगकर्ता आईडी = 13 और फ़िल्टर = कोई नहीं और पृष्ठ = 3
http://codegym.cc:443 / alpha /api/ contacts ? उपयोगकर्ता आईडी = 13 और फ़िल्टर = कोई नहीं और पृष्ठ = 3

"वास्तव में, सभी सर्वर अपार्टमेंट बिल्डिंग हैं। और प्रत्येक में 65,000 अपार्टमेंट (बंदरगाह) हैं।"

"क्यों 65,000?"

"एक पोर्ट संख्या को इंगित करने के लिए दो बाइट्स का उपयोग किया जाता है। 65536 सबसे बड़ा पूर्णांक मान है जो दो बाइट्स लंबा है।"

"प्रत्येक प्रोटोकॉल (http, https, ftp, ...) का अपना डिफ़ॉल्ट पोर्ट होता है।"

"यदि अपार्टमेंट नंबर (पोर्ट) निर्दिष्ट नहीं है, तो प्रोटोकॉल के डिफ़ॉल्ट पोर्ट का उपयोग किया जाता है।"

"यदि प्रोटोकॉल http है, तो पोर्ट 80 है। यदि प्रोटोकॉल https है, तो पोर्ट 443 है, आदि।"

"दूसरे शब्दों में, निम्नलिखित प्रविष्टियाँ समतुल्य हैं:"

यूआरएल इसका वास्तव में क्या मतलब है
http://www.mail.google.com _ http://www.mail.google.com : 80
http://codegym.cc _ http://codegym.cc : 80
http://codegym.cc/alpha _ http://codegym.cc : 80 /alpha
https://codegym.cc/api?x _ https://codegym.cc : 443 /api?x

"क्या होगा अगर पोर्ट 444 है, लेकिन प्रोटोकॉल https है?"

"मैं आपको पहले ही बता चुका हूँ। यदि पोर्ट निर्दिष्ट नहीं है, तो यह प्रोटोकॉल के आधार पर निर्धारित किया जाता है। यदि यह निर्दिष्ट है, तो निर्दिष्ट पोर्ट का उपयोग किया जाता है।"

"अच्छा ऐसा है।"

"आप जानते हैं कि मनुष्य कभी-कभी नामों के बजाय सर्वनाम का उपयोग कैसे करते हैं: मैं, आप, वह, …?"

"हाँ, लेकिन लोग स्वाभाविक रूप से अजीब हैं। मैं उस पर ध्यान नहीं देने की कोशिश करता हूं।"

"ठीक है, कंप्यूटर का एक डोमेन नाम भी होता है जिसका अर्थ है 'मैं'। यह 'लोकलहोस्ट' है।"

"यदि आप अपने ब्राउज़र में लोकलहोस्ट दर्ज करते हैं , तो ब्राउज़र आपके कंप्यूटर तक पहुंच जाएगा।"

"और अगर आपके पास एक वेब सर्वर स्थापित है, तो यह ब्राउज़र को एक वेबपेज भेजेगा।"

"कूल! मैं एक वेब सर्वर शुरू करना चाहता हूं और ब्राउज़र में पेज खोलना चाहता हूं।"

"मुझे बताओ कि कैसे करना है, बिलाबो। कृपया !!! आप मेरे दोस्त हैं, है ना?"

"बिलाबो एक दोस्त के लिए कुछ भी करेगा।"

"सुनो।"

स्टेप 1
जावा डेवलपमेंट किट (जेडीके) स्थापित करें
परिणाम
जेडीके स्थापित है

"बिलाबो, मैं लेवल 30 का प्रोग्रामर हूं। मैंने बहुत समय पहले JDK इंस्टॉल किया था!"

"महान, तो चलो जारी रखें।"

चरण दो
टॉमकैट 9 डाउनलोड करें
संकेत 1:
गूगल का उपयोग
संकेत 2:
आधिकारिक अपाचे टॉमकैट वेबपेज
संकेत 3 (Windows उपयोगकर्ताओं के लिए सीधा लिंक):
अपाचे टॉमकैट डाउनलोड करें

"समझ गया।"

"महान।"

चरण 3
टॉमकैट 9 स्थापित करें
डिफ़ॉल्ट स्थापना सेटिंग्स का उपयोग करें।
कुछ भी मत बदलो।
स्क्रीन 3
टॉमकैट -3 को स्थापित और कॉन्फ़िगर करें
स्क्रीन 4
टॉमकैट -4 को स्थापित और कॉन्फ़िगर करें

"यहाँ आप वेब सर्वर का नाम और पोर्ट सेट कर सकते हैं। डिफ़ॉल्ट पोर्ट 8080 है।
कुछ भी न बदलें। सब कुछ वैसा ही रहने दें जैसा वह है।"

स्क्रीन 5
टॉमकैट -5 को स्थापित और कॉन्फ़िगर करें

वह फ़ोल्डर निर्दिष्ट करें जहाँ JDK स्थापित है

स्क्रीन 6
टॉमकैट -6 को स्थापित और कॉन्फ़िगर करें
स्क्रीन 7
टॉमकैट -7 को स्थापित और कॉन्फ़िगर करें

"हाँ। मैंने अभी अगला क्लिक किया और बस हो गया।"

"बहुत बढ़िया। अब आपके पास टॉमकैट 9 वेब सर्वर स्थापित है और चल रहा है, पोर्ट 8080 पर अनुरोधों को सुन रहा है। यह सॉफ्टवेयर विकास के लिए मानक पोर्ट है।"

"ठीक है, तो मेरे पास टोमकैट है, लेकिन मैं इसके लिए प्रोग्राम कैसे लिख सकता हूं?"

"मैं चाहता हूं कि यह कुछ दिलचस्प-किसी प्रकार का अच्छा वेबपेज उत्पन्न करे।"

"ठीक है, मैं आपको बताता हूँ कि एक छोटे से ब्रेक के बाद इसे कैसे करना है।"