HTTP क्या है? – हेल्लो दोस्तों आज हम इस Article में आप HTTP क्या है? के बारे में जानेगे। HTTP क्या है?, HTTP की विशेषताए और HTTP के Components कौन से हैआदि के बारे में जानेगे। वर्तमान Time में Technology इतनी अधिक आगे होती जा रही है, कि आज के Time कोई भी काम Difficult नहीं लगता है।
HTTP भी एक Technology होती है, जिसका use अधिकतर Browsers करते आ रहें है क्योंकि Brosser HTTP ही लेते हैं, क्योंकि यह बेहद आसान होता है और इसमें केवल Domain Name Fill करना होता है। इसके बाद Browser खुद ही HTTP:// को Autofill कर देता है।
यह एक ऐसी Technology है, जिसका use मुख्य रूप से Web Server और Web user के बीच बेहतर Communication के लिए किया जाता है। इसलिए यदि आपको HTTP के विषय में अधिक Information चाहते है, तो HTTP क्या है? इस Article को पूरा पढ़े….
HTTP क्या है? (What is HTTP) –
HTTP का मतलब Hypertext Transfer Protocol है जिसका Invention Tim Berners-Lee और उसकी टीम ने 1989 से 1991 के बीच किया था। Hypertext एक प्रकार का Text है जिसे विशेष रूप से Hypertext मार्कअप लैंग्वेज (HTML) की Help से Coded किया जाता है।
HTTP /3 , HTTP Protocol का Latest Version है, जिसे मई 2022 में Published किया गया था। इस Protocol को, इसकी दक्षता के कारण Hypertext Transfer Protocol के रूप में जाना जाता है। यह Computer को एक दूसरे के साथ Communications करने के लिए एक Standardized तरीका Provide करता है।
HTTP नियमों और मानकों का एक Set Provide करता है जो Control करता है कि World Wide Web पर कोई भी Information कैसे Transferred हो सकती है। यह एक Client-Server Protocol है जो Web Browser और Web Server को संचार करने में सक्षम बनाता है।
HTTP की परिभाषा क्या है? –
- HTTP का Full Form HyperText Transfer Protocol है। जिसका use WWW (World Wide Web) पर Data (जैसे HTML files, image files, plain text, hypertext, audio, video आदि) Distributed करने के लिए किया जाता है।
- HTTP नियमों और मानकों का Set Provide करता है जो यह Control करता है कि WWW (World Wide Web) पर किसी भी Information को कैसे प्रसारित किया जा सकता है। HTTP वेब Browser और Server को संचार करने के लिए Standard नियम Provide करता है।
- HTTP एक Application Layer Protocol है जो TCP पर आधारित होता है। इसे “Stateless Protocol” के रूप में भी जाना जाता है क्योंकि प्रत्येक Command को अलग से Execute किया जाता है।
- HTTP, FTP के समान है क्योंकि यह Files को एक Host से दूसरे Host में Transfer करता है।
- यह TCP/IP पर आधारित संचार Protocol है, जो हमें Server से Client को Data Transfer करने की अनुमति Provide करता है।
HTTP का इतिहास –
Tim Berners Lee और उनकी टीम ने CERN में HTTP Invention किया था। HTTP मे Time to Time पर होने वाले Development के फलस्वरूप नए-नए Version बनते गए जो की निम्नलिखित है –
- HTTP 0.9 :- यह HTTP का पहला Version था जिसे 1991 में Launch किया गया था।
- HTTP 1.0 :- 1996 में, RFC (Request For Comments) 1945 को HTTP 1.0 Launch किया गया।
- HTTP 1.1 :- January 1997 में, RFC 2068 को HTTP 1.1 में Launch किया गया।
- HTTP 2.0 :- HTTP 2.0, 14 May 2015 को RFC 7540 के रूप में Publish हुआ।
- HTTP 3.0 :- HTTP 3.0 पिछले RFC Draft पर आधारित है। इसका नाम बदलकर HTTP QUIC कर दिया गया है जो कि Google द्वारा Advanced एक Transport Layer Network Protocol है।
HTTP Error Code –
जब हम Internet द्वारा Browser मे कुछ Search करते है तो Browser मे कभी-कभी Error दिखाई देता है, जिसके कारण Website Open नहीं होता है। HTTP में इन Errors के लिए कई Codes है जिससे Error के पीछे का कारण पता चलता है।
HTTP के कुछ Common Error Codes की Information निम्न है –
401 Unauthorized –
यह सबसे Common Website Error है। 401 Error Message का मतलब है, कि Server को Unauthenticated यानी गलत Request मिल रहा है। इस तरह के Error अक्सर सही URL Address न होने पर दिखता है।
404 Not Found –
यह भी काफी Common HTTP Error Code है। ये HTTP Error तब आता है जब user ऐसी चीजों की तलाश करता है, जो Server में Available नहीं है।
500 Internal Server Error –
500 Internal Server Error एक General Error है, जो Server मे गड़बड़ी के कारण दिखाई देता है। यह एक Generic Error है तो Error आने के कई कारण हो सकते है जैसे WordPress Plugin, Database, इत्यादि।
408 Request Timeout –
यह Error तब आता है जब Server का Speed Slow होता है या आपके द्वारा Request की गई File Size बड़ा है।
400 Bad File Request –
अक्सर, यह Error Browser में ग़लत URL Address Type करने के कारण आता है।
403 Forbidden/ Access Denied –
यह Error आपको तभी दिखता है जब आप ऐसे Page को Open करने की कोशिश करते है जिसका Permission आपके पास नहीं है।
503 Service Unavailable Unavailable –
इस Error का कारण Internet Connection मे कोई दिक्कत या Server Busy हो सकता है।
HTTP कैसे कार्य करता है? (How Does HTTP Work) –
HTTP एक Application Layer प्रोटोकॉल है, जो Transmission Control Protocol (TCP) पर आधारित है।
यह Client-Server कम्युनिकेशन Modal का use करता है। यह एक Stateless Protocol है, जिसका मतलब है कि Client जितने भी Request Send करता है उन सभी को Automatically अलग-अलग Execute करता है और सभी Demand को Response करने के बाद Connection Close कर देता है।
Client द्वारा Send किये गए Message को Request कहा जाता है और Server से जो Message का Answer के रूप में message Receive होता है उसे Response कहते है।
इन Server में सभी Types के File Formats जैसे Photo, Video, Audio इत्यादि Store रहता है। जब Client से Server को Request मिलता है, तो Server इसके अनुसार Response करता है और Data Send करता है।
Web Browser और Server के बिच एक दूसरे के साथ Data संचार करने के लिए HTTP द्वारा कुछ Standard Rules निर्धारित किए गए है।
जब Client Server पर HTTP Request Send करता है, तो Web Server इसे Receive करता है। इसके बाद Server उस Request को Process करने के लिए Application Run करता है और फिर Server Request के अनुसार Response करता है और Data Client को Send कर देता है।
चलिये हम HTTP को एक उदाहरण के द्वारा अच्छे से समझने का प्रयास करते है –
सबसे पहले हम जब भी कोई Website Open करना चाहते है तो सबसे पहले हम Web Browser खोलते है उसके बाद हम उस Website का URL Type करते है जिसे हमे खोलना है (www.frenkstech.com)
यह URLअब Domain Name Server (DNS) को Send किया जाता है। फिर DNS पहले अपने Database में इस URL के Record की जांच करता है, फिर DNS इस URL के अनुरूप Web Browser को उसका IP Address लौटाता है।
IP Address प्राप्त होने के बाद अब Browser वास्तविक Server को Demand Send करता है। Browser द्वारा Server से Demand Receive होने के बाद Server उस Demand के अनुसार Client को Data भेज देता है, Client को Data भेजने के बाद Connection Close हो जाएगा।
अगर हम Server से कुछ और चाहते है तो हमें Client और Server के बीच Connection फिर से स्थापित करना पड़ता है। तो दोस्तों HTTP Protocol कुछ इस तरह कार्य करता है।
क्या HTTP का use Safe है? –
HTTP अधिक Safe नहीं है जिसका सबसे बड़ा कारण SSL Certificate का न होना है। जो Connection को Safe बनाने में Help करता है। बिना SSL Certificate के Client और Server के बीच Secure Connection नहीं बनता है और न ही Transfer होने वाला Data Encrypted होता है। इसमें Data Hack होनी की Possibility भी अधिक रहता है।
इन्ही Reasons की वजह से HTTP ज्यादा Safe नहीं होता है। HTTP Connection मे कभी भी Credit Card, Banking, Password इत्यादि की Information Share करने से बचना चाहिए।
Note – जब आप किसी Website पर अपनी Personal Information Recorde करते है या अपने Credit Card से Online भुगतान करते है तो आपको इस बात पर Attention देना चाहिए कि आप जिस Website पर जा रहे है उसका URL आपके Browser के Address बार में HTTPS से शुरू होता है या नहीं? URL में HTTPS का होना काफी Important है क्योकि यह Protocol आपकी Data को Security सुनिचित करता है।
HTTP की विशेषताएं (Features of HTTP) –
- HTTP, TCP/IP आधारित Communication Protocol है जिसका use Server से Client और Client से Server के बीच Data पहुंचाने के लिए किया जाता है।
- Server और Client के बीच किसी भी Type की Material का Give and Take तब तक किया जा सकता है जब तक Server और Client Connected है।
- एक बार Data का Give and Take हो जाने के बाद Server और Client एक दूसरे से जुड़े नहीं रहते।
- Connectionless Protocol – HTTP एक Connectionless Protocol है। क्योंकि Connection Closed होने के बाद Server को Client के बारे में कुछ भी याद नहीं रहता है और Client को Server के बारे में कुछ भी Memory नहीं रहता।
- HTTP Client एक Request Server को Send करता है और Server से Feedback की Wait करता है। जब Server Request Receive करता है, तो Server Request को Proses करता है और HTTP Client को Feedback वापस Send करता है जिसके बाद Client Connection काट देता है। Connection Close होने के बाद Server को Client के बारे में कुछ भी याद नहीं रहता है और Client को Server के बारे में कुछ भी याद नहीं रहता।
- Media Independent – एचटीटीपी Protocol एक Media Independent Protocol है क्योंकि Data तब तक Send किया जा सकता है जब तक Client और Server दोनों Data Material को संभालना जानते है। Client और Server दोनों के लिए MIME-Type Header में Material का प्रकार बताना आवश्यक होता है।
- Stateless – एचटीटीपी एक Stateless Protocol है क्योंकि Server और Client एक दूसरे के बारे में केवल Present Demand के दौरान ही Aware होते है। बाद में दोनों एक दूसरे को भूल जाते है। Protocol की इस Nature के कारण, न तो Client और न ही Browser वेब Pege पर विभिन्न Requests के बीच Information को याद रख सकता है।
HTTP Steps –
- Client TCP/IP प्रोटोकॉल का use कर Server से Connection खोलता है।
- Client Server को एक एचटीटीपी Request भेजता है, जिसमें Method (जैसे GET या POST), Request किए जा रहे Resource का URL और कोई भी Header या Data जिसे Request के साथ Send करने की जरूरत होती है।
- Server Demand प्राप्त करता है और इसे Process करता है।
- Server Client को एक एचटीटीपी Feedback वापस Send करता है, जिसमें Requested Resource (जैसे HTML Web Page), Demand की स्थिति (जैसे 200 ओके या 404 नहीं मिला), और कोई Header या Data शामिल है जिसकी आवश्यकता है Feedback के साथ Send किया जाना है।
- Customer Feedback प्राप्त करता है और इसे Process करता है, Result Displayed करता है (जैसे HTML Web Page Presente करना)।
- Client द्वारा Connection Close कर दिया गया है। एचटीटीपी एक Stateless Protocol है, जिसका Meaning है कि Server Requests के बीच Client के बारे में जानकारी नहीं रखता है। State को बनाए रखने के लिए, Client Side पर Information संग्रहीत करने के लिए Cookies और Other Techniques का use किया जाता है, और यह Information प्रत्येक Demand के साथ Server पर वापस Send की जाती है।
Architecture of HTTP –
एचटीटीपी (Hypertext Transfer Protocol) का Architecture Client Server मॉडल पर आधारित है। इस मॉडल में, एक Client, जैसे कि एक Web Browser, एक Server को Demand Send करता है, जो Demand को Process करता है और Client को Feedback Send करता है।एचटीटीपी System के Basic Architecture में निम्नलिखित Constituent शामिल है –
- Client :- Client Server को Demand भेजने और Feedback प्राप्त करने के लिए जिम्मेदार होता है। इसे आम तौर पर एक Web Browser के रूप में लागू किया जाता है, लेकिन इसे Command-Line Tools, Mobile App या किसी Other Applications के रूप में भी Applicable किया जा सकता है जो एचटीटीपी Demand कर सकता है।
- Server :- Client से Demand प्राप्त करने और Feedback भेजने के लिए Server जिम्मेदार है। एक Server एक Machine या Machines का Set हो सकता है, और कई Websites या Web Applications को Host कर सकता है। यह Requests को भी संभालता है, आवश्यक Information निकालता है और फिर उचित Feedback उत्पन्न करता है।
- Request :- Demand Client द्वारा Server को भेजा गया Message है। इसमें आमतौर पर Method (जैसे GET या POST), Demand किए जा रहे Resources का URL और Demand के साथ Send करने वाले Header या Data शामिल होते है।
- Feedback :- Feedback Server द्वारा Client को भेजा गया Message है। इसमें आमतौर पर Requested Resource (जैसे कि एक HTML Web Page), Demand की स्थिति (जैसे 200 ओके या 404 नहीं मिला), और कोई Header या Data शामिल होता है जिसे Feedback के साथ Send करने की आवश्यकता होती है।
- Proxy and Cache :- एचटीटीपी Demand Middlemen से गुजर सकते है, जिन्हें Proxy और Cash कहा जाता है। Proxy का use उचित Server पर Requests को Forwarder करने के लिए किया जाता है, जबकि Server को भेजे जाने वाले Requests की Number को कम करके Display को बेहतर बनाने के लिए Cash एक Resources की एक प्रति Store करता है।
- Gateway :- यह एक Constituent है जो Client और Server के बीच एक Interface Provide करता है, Client को अन्य Protocol में Resources तक पहुँचने की Permission देता है, Example के लिए एक SOAP Web service.
एचटीटीपी का use करके Internet पर Communications को सक्षम करने के लिए ये सभी Constituent एक साथ काम करते है। Client Server को एक Demand भेजता है, Server Demand को Process करता है और Client को Feedback वापस भेजता है, और Client Request संसाधन (जैसे Web Page) को Display करने के लिए Feedback का use करता है।
HTTP के Components कौन से है? –
एचटीटीपी एक Client-Server प्रोटोकॉल है। Demand एक Entity, User-Agent (या उसकी ओर से एक Proxy) द्वारा Send किया जाते है। अधिकांश Time User-Agent एक Web Browser है, लेकिन यह कुछ भी हो सकता है, Example के लिए एक Robot जो Web को crawl करता है और Search Engine Index को बनाए रखता है।
Every व्यक्तिगत Demand एक Server को Send किया जाता है, जो इसे संभालता है और एक जवाब Provide करता है, जिसे Feedback कहा जाता है। Client और Server के बीच Multiple Units हैं, जिन्हें Collective रूप से Proxy कहा जाता है, जो विभिन्न Operation करते है और Example के लिए Gateways या Caches के रूप में Work करते है।
Real में, Demand को Handle करने वाले एक Browser और Server के बीच अधिक Computer है Router, Modem और बहुत कुछ है। Web के Layered Design के लिए, ये Network और Transport Layers में छिपे हुए हैं। Application Layer पर एचटीटीपी Top पर है। Network Problems का निदान करने के लिए Important है, Underlying Layers HTTP के वर्णन के लिए ज्यादातर Irrelevant है।
Client: the user-agent –
user-agent कोई भी टूल है जो यूजर की ओर से कार्य करता है। यह भूमिका मुख्य रूप से वेब Browser द्वारा की जाती है; अन्य संभावनाएँ प्रोग्राम हैजिनका use इंजीनियरों और Web Developers द्वारा उनके Application को Debug करने के लिए किया जाता है।
Browser हमेशा Request आरंभ करने वाली इकाई है। यह कभी भी Server नहीं है (हालांकि Server द्वारा शुरू किए गए मैसेज को अनुकरण करने के लिए कुछ तंत्र वर्षों से जोड़े गए हैं)।
Web Page प्रस्तुत करने के लिए, Browser HTML डॉक्यूमेंट को लाने के लिए एक मूल Demand भेजता है जो पेज का प्रतिनिधित्व करता है। यह तब इस फ़ाइल को विश्लेषण करता है, निष्पादन स्क्रिप्ट, लेआउट जानकारी (CSS) को प्रदर्शित करने के लिए अतिरिक्त Demand करता है।
पेज के भीतर निहित उप-संसाधन (आमतौर पर चित्र और वीडियो)। तब वेब Browser उपयोगकर्ता को एक संपूर्ण डॉक्यूमेंट, Web Page पर प्रस्तुत करने के लिए इन संसाधनों को मिलाता है। Browser द्वारा निष्पादित स्क्रिप्ट बाद के चरणों में अधिक संसाधन प्राप्त कर सकते हैऔर Browser तदनुसार Web Page को अपडेट करता है।
एक Web Page एक Hypertext Document है। इसका मतलब है कि Display Text के कुछ हिस्से Link है, जो एक नए Web Page को लाने के लिए (आमतौर पर Mouse के एक Click से) Activate किया जा सकता है, जिससे users अपने user-agent को निर्देशित कर सकता है और वेब के माध्यम से Navigate कर सकता है। Browser एचटीटीपी अनुरोधों में इन निर्देशों का अनुवाद करता है, और users को स्पष्ट Feedback के साथ प्रस्तुत करने के लिए एचटीटीपी प्रतिक्रियाओं की आगे व्याख्या करता है।
The Web server –
कम्युनिकेशन चैनल के विपरीत साइड में, Server है, जो क्लाइंट द्वारा Demand के अनुसार डॉक्यूमेंट Provide करता है। एक Server वस्तुत केवल एक Machine के रूप में प्रकट होता है।
इसका कारण यह है कि यह वास्तव में सर्वरों का एक संग्रह हो सकता है, लोड को शेयर करना (लोड बैलेंसिंग) या अन्य कंप्यूटर (जैसे कैश, एक डीबी सर्वर, या ई-कॉमर्स सर्वर) से पूछताछ करने वाले सॉफ़्टवेयर का एक जटिल टुकड़ा है, मांग पर डॉक्यूमेंट को पूरी तरह या आंशिक रूप से उत्पन्न करना।
एक Server जरूरी नहीं कि एक ही Machine हो, लेकिन एक ही Machine पर कई Server Software इंस्टेंस होस्ट किए जा सकते हैं। एचटीटीपी /1.1 और Host Header के साथ, वे समान IP Address भी Share कर सकते हैं।
Proxies –
Web Browser और Server के बीच, कई Computer और मशीनें एचटीटीपी मैसेज को रिले करती हैं। वेब स्टैक की लेयर्ड संरचना के कारण, इनमें से अधिकांश ट्रांसपोर्ट, नेटवर्क या फिजिकल लेयर पर काम करते हैं, एचटीटीपी लेयर पर पारदर्शी होते हैऔर संभवतः प्रदर्शन पर एक महत्वपूर्ण प्रभाव डालते हैं।
एप्लीकेशन लेयर पर काम करने वालों को आम तौर पर proxies कहा जाता है। ये पारदर्शी हो सकते हैं, उन अनुरोधों पर अग्रेषित करना जो उन्हें किसी भी तरह से बदलने के बिना प्राप्त होते हैं, या गैर-पारदर्शी, जिस स्थिति में वे Server के साथ इसे पारित करने से पहले किसी तरह से Demand को बदल देंगे। प्रॉक्सी कई कार्य कर सकते है –
- Caching – (कैश सार्वजनिक या निजी हो सकता है, जैसे Browser कैश)
- Filtering – (एक antivirus scan या parental control की तरह)
- Load Balancing – (कई servers को विभिन्न requests को पूरा करने की Permission देने के लिए)
- Authentication – (विभिन्न resources तक पहुंच को Control करने के लिए)
- Logging – (historical information के storage की Permission)
क्या HTTP को Hack किया जा सकता है? –
जब आप किसी एचटीटीपी वेबसाइट का use करके लॉगिन करते हैं, तो हैकर आपका लॉगिन और पासवर्ड देख सकता है। यह जानते हुए कि 52% लोग अपने पासवर्ड का पुन: use करते हैं, इसका मतलब है कि हैकर के पास न केवल उस छोटी फोरम साइट तक पहुंच है जो एचटीटीपी का use करती है बल्कि आपका ईमेल, सोशल मीडिया या यहां तक कि बैंक अकाउंट भी है।
HTTP के फायदे (Advantages of HTTP) –
- एक साथ कम connection होने के कारण memory और CPU का use कम होता है।
- चूंकि connection के प्रारंभिक चरण में connection स्थापित करने से handshaking किया जाता है, इसलिए आगे देरी कम होती है क्योंकि बाद के requests के लिए handshaking की कोई आवश्यकता नहीं होती।
- connection close किए बिना Error का पता चल जाता है।
- हम एचटीटीपी को अन्य Protocol के साथ, या अन्य Network के साथ भी एचटीटीपी को implement कर सकते हैं।
- एचटीटीपी आधारित Web Page, Computer और Internet कैश में Store होते हैं, जिस कारण ये आसानी से पहुंच योग्य होते है।
- एचटीटीपी Platform Independent Protocol है।
- एचटीटीपी को runtime-support. की जरूरत होती।
HTTP के नुकसान (Disadvantages of HTTP) –
- Communication स्थापित करने और Data Transfer करने के लिए एचटीटीपी को अधिक Power की आवश्यकता होती है।
- HTTP कम Safe है, क्योंकि यह किसी भी Encryption विधि का use नहीं करता।
- कोई Confidentiality नहीं है क्योंकि कोई भी Message या Content को देख सकता है और उसमे Modify भी कर सकता है।
- Client तब तक Connection Close नहीं करता है जब तक कि उसे Server से पूरा Data प्राप्त नहीं हो जाता, और इसलिए Server को Data पूरा होने की Wait करनी पड़ती है और इस Time के दौरान Server अन्य Client के लिए Available नहीं हो सकता।
निष्कर्ष (Conclusion) –
दोस्तों आज के इस Article में हमने HTTP क्या है? के बारे में बताया है। आज Internet की दुनिया में HTTP कितना usefully है और साथ ही जाना है कि HTTP क्या है?, HTTP की विशेषताएं और HTTP के Components के बारे में तो Friends आशा करता हूँ कि आपको ये Article पसंद आया होगा। मुझे उम्मीद है कि आपको यहां से HTTP क्या है? के बारे में पूरी Information मिली होगी।
HTTP क्या है? अच्छा लगा हो तो इसे अपने Friends के साथ Share जरुर करें तथा अपने Social Media पर भी Share करें ताकि अन्य लोगों को भी HTTP क्या है? के बारें में पूरी Information Receive कर हो सकें।
अगर आपके मन में HTTP क्या है? को लेकर कोई भी Doubts है तो आप हमें नीच Comments लिखकर पूछ सकते है। अगर आप इसी तरह की ओर Information के बारे में जानना चाहते है तो हमारी Website Frenkstech.com के साथ जुड़े रहें। धन्यवाद !
FAQs –
Q. 1 एचटीटीपी का मतलब कय है?
Ans. एचटीटीपी का मतलब Hypertext Transfer Protocol है।
Q. 2 एचटीटीपी का Invention किसने किया?
Ans. एचटीटीपी का Invention Tim Berners-Lee और उसकी टीम ने किया था। Hypertext एक प्रकार का Text है जिसे विशेष रूप से Hypertext मार्कअप लैंग्वेज (HTML) की Help से Coded किया जाता है।
Q. 3 एचटीटीपी का Invention कब किया?
Ans. एचटीटीपी का Invention Tim Berners-Lee और उसकी टीम ने 1989 से 1991 के बीच किया था।