आधुनिक इंटरनेट के बीच संचार पर बनाया गया हैक्लाइंट (ब्राउज़र) और सर्वर। ताकि वे एक दूसरे के साथ सूचना का आदान-प्रदान कर सकें, विशेष प्रोटोकॉल विकसित किए गए हैं। इनमें से एक HTTP है, और इसके लिए धन्यवाद, उपयोगकर्ता एक ब्राउज़र के माध्यम से काम कर सकते हैं और HTML पृष्ठों को देख सकते हैं।
HTTP दो कंप्यूटरों के बीच HTML पृष्ठों का आदान-प्रदान करने का एक तरीका है। प्रोटोकॉल का आविष्कार 1990 में किया गया था और वर्तमान में हाइपरटेक्स पृष्ठों को प्रदर्शित करने का मुख्य तरीका है।
HTTP हेडर स्ट्रिंग्स हैं जो संवाद करते हैंकंप्यूटर। यह लोगों के बीच एक संवाद जैसा दिखता है। जब ब्राउज़र साइट को खोलता है, तो यह एक अनुरोध उत्पन्न करता है, इसमें स्वयं (भाषा, देश, संसाधन से लिंक, कर्नेल संस्करण, आदि) के बारे में आवश्यक जानकारी होती है। यह सभी जानकारी सर्वर को भेजी जाती है, और एक निश्चित कार्यक्रम (Apache, Nginx, LiteSpeed, आदि) है। वह प्राप्त लाइनों को पढ़ती है और, सवाल के आधार पर, एक उत्तर उत्पन्न करती है।
उदाहरण के लिए, एक व्यक्ति google.com खोलने का फैसला करता है, वह खोज बार में एक लिंक दर्ज करता है और ब्राउज़र एक अनुरोध उत्पन्न करता है। ब्राउज़र HTTP हेडर सशर्त रूप से इस तरह दिखता है:
शुरू लाइन | Google.com दिखाओ |
जांच | मैं रूस से हूँ मैं Google Chrome का उपयोग करता हूं मुझे HTML कोड की आवश्यकता है मुझे उपयोगकर्ता जानकारी है |
HTTP शरीर | उम्मीद |
सर्वर डेटा संसाधित करता है और एक प्रतिक्रिया उत्पन्न करता है:
शुरू लाइन | सब कुछ ठीक है, पेज मिल गया है और काम कर रहा है |
उत्तर | मैं अपाचे बेस पर काम कर रहा हूं पृष्ठ 05/27/2017 को बदल दिया गया था Utf-8 एन्कोडिंग |
संदेश का मुख्य हिस्सा | पेज कोड प्राप्त करें यह उपयोगकर्ता की नई जानकारी है (लॉगिन, पासवर्ड) |
संदेश के मुख्य भाग में पृष्ठ का HTML कोड होता है।
आजकल, अधिकांश साइटें HTTP से बदल रही हैंHTTPS कनेक्शन। उत्तरार्द्ध के बीच का अंतर सभी प्रेषित जानकारी का अतिरिक्त एन्क्रिप्शन है। एक्सचेंज शुरू करने से पहले, क्लाइंट को सर्वर को प्रमाणित करने के लिए एक एसएसएल प्रमाणपत्र की आवश्यकता होती है। डेवलपर के लिए, कुछ भी नहीं बदलता है और वह अपना कोड बदले बिना काम करना जारी रख सकता है।
प्रमाण पत्र प्राप्त करने के बाद, ग्राहक इसे सत्यापित करता हैप्रामाणिकता के लिए (सर्वर से प्रमाण पत्र और केंद्र से प्रमाण पत्र की तुलना की जाती है)। यदि सब ठीक है, तो HTTP प्रोटोकॉल शुरू होता है। प्रमाण पत्र मान्य होने के बाद, हेडर RSA के माध्यम से एन्क्रिप्ट किए जाते हैं। अब एक हमलावर महत्वपूर्ण उपयोगकर्ता जानकारी (लॉगिन, पासवर्ड, आदि) चोरी करने में सक्षम नहीं होगा।
आप स्वयं HTTP डायलॉग देख सकते हैं। विशेष संक्षिप्तियों का उपयोग वाक्यांशों के रूप में किया जाता है - दिनांक, कुकी, होस्ट, सर्वर, आदि HTTP देखें-ब्राउज़र एक्सटेंशन का उपयोग करके हेडर संभव हैं। ऑनलाइन सेवाएं भी इसमें मदद करेंगी।
HTTP हेडर को प्लगइन्स के उपयोग से देखने के लिए:
ऑनलाइन सेवाओं के उपयोग से:
वे सर्वर से प्राप्त हेडर को इंटरसेप्ट करते हैंऔर उन्हें एक अलग विंडो में प्रदर्शित करें। इसके अलावा, एक पृष्ठ से आप एक बार में 100-200 हेडर प्राप्त कर सकते हैं, और उन्हें समय-समय पर कुछ समय बाद भेजा जा सकता है। उदाहरण के लिए, सामाजिक नेटवर्क में ऑनलाइन जाँच करने के लिए।
HTTP हेडर को चार प्रकारों में वर्गीकृत किया जा सकता है:
जानकारी साझा करना शुरू करने के लिए, पहलेमुख्य लाइन बनती है। इसमें क्लाइंट कहता है कि उसे कौन सी फाइल या ऑब्जेक्ट चाहिए। इसके लिए, प्रोटोकॉल का उल्लेख करने के कुछ तरीकों का उपयोग किया जाता है। स्टार्ट लाइन संरचना में तीन भाग होते हैं:
अनुरोध विधि | एक वस्तु | मसविदा बनाना |
पद | /c840024/upload.php | HTTP / 1.1 |
उसके बाद, होस्ट लाइन का पालन किया जाना चाहिए और साइट URL इंगित किया गया है। अलग-अलग अनुरोध विधियाँ हैं। प्रोग्रामर सबसे अधिक बार उपयोग करते हैं:
स्टार्ट लाइन भेजने के बाद सभी फॉलो करते हैंअन्य हेडर - उपयोगकर्ता एजेंट, कुकी, आदि प्रारंभिक कॉल के बिना, HTTP के माध्यम से सूचनाओं के आदान-प्रदान को शुरू करना असंभव है। हेडर सिर्फ एक अतिरिक्त है और 1.0 प्रोटोकॉल में वे बिल्कुल प्रेषित नहीं हो सकते हैं।
प्रारंभिक स्ट्रिंग भेजने के बाद, क्लाइंट भेजता हैअपने डेटा को होस्ट करने के लिए, उदाहरण के लिए, ब्राउज़र संस्करण और प्रयुक्त भाषा। यदि वांछित है, तो सर्वर क्लाइंट से अन्य जानकारी का अनुरोध कर सकता है:
अनिवार्य (हमेशा प्रसारित) HTTP अनुरोध हेडर होस्ट, रेफर, उपयोगकर्ता एजेंट और स्वीकार हैं।
प्रोग्रामर अनुरोध हेडर को प्रभावित नहीं कर सकता है, वे ब्राउज़र द्वारा उत्पन्न होते हैं। आप अतिरिक्त एक्सटेंशन के माध्यम से कार्यक्रम में उनके स्थानांतरण को कॉन्फ़िगर कर सकते हैं।
क्लाइंट से अनुरोध प्राप्त करने के बाद, पेज सर्वर को कुछ तार भेजता है। HTTP हस्तांतरण के लिए php में-हेडर, हेडर () फ़ंक्शन का उपयोग करें। उदाहरण के लिए, आप पृष्ठ के नए स्थान की रिपोर्ट कर सकते हैं:
हेडर ("स्थान: http://www.site.com/")।
सर्वर पर पृष्ठ से, आवश्यक जानकारी के साथ डेटा क्लाइंट को भेजा जाता है। इस पद्धति का उपयोग करके, आप सर्वर से आवश्यक जानकारी प्राप्त कर सकते हैं:
ये अनुरोध मुख्य रूप से ब्राउज़र में पृष्ठ के सही प्रदर्शन के लिए आवश्यक हैं। इनका उपयोग पृष्ठ लोडिंग गति में सुधार के लिए किया जाता है।
सुर्खियों में हैं कि निष्पक्षअनुरोध और प्रतिक्रिया, प्रत्येक अनुरोध एक विशिष्ट इकाई (एचटीएमएल कोड वाला पृष्ठ) के लिए बाध्य है। इन अनुरोधों के लिए धन्यवाद, ब्राउज़र पृष्ठ के बारे में जानकारी को परिष्कृत करता है। वे सक्रिय रूप से कैशिंग में उपयोग किए जाते हैं।
सबसे लोकप्रिय इकाई का शीर्षक हैअंतिम बार संशोधित। यह अनुरोध ब्राउज़र से सर्वर पर भेजा जा सकता है और इसके विपरीत। इस हेडर के माध्यम से, क्लाइंट को पता होता है कि उसे अपना कैश अपडेट करना है या नहीं। संवाद उदाहरण:
ग्राहक: "मेरे पास दिनांक 05/16/2016 को कैश है, क्या सर्वर पर पेज बदल गया है?"
सर्वर: "हां, कैश को 03/19/2017 को बदल दिया गया था, यहां नया संस्करण है।"
क्लाइंट से स्टार्ट लाइन प्राप्त करने के बाद, सर्वर अपनी प्रतिक्रिया उत्पन्न करता है।
एचटीटीपी | प्रोटोकॉल संस्करण | स्थिति शीर्षक | स्पष्टीकरण |
एचटीटीपी | 1.1 | 200 | ठीक |
यदि कनेक्शन स्थिति की पुष्टि की जाती है, तो सर्वर क्लाइंट को अनुरोधित जानकारी भेज सकता है।
Http संवाद का एक उदाहरण नीचे दी गई तस्वीर में देखा जा सकता है।
हेडर () फ़ंक्शन का उपयोग करके प्रोग्रामर द्वारा पेज पर अनुरोध उत्पन्न होते हैं।
संचार जारी रखने के लिए, क्लाइंट को होना चाहिएविश्वास है कि सब कुछ काम कर रहा है और होस्टिंग पर सही ढंग से प्रदर्शित किया गया है। इसे सत्यापित करने के लिए, प्रतिक्रिया की स्थिति तैयार की गई है। वे तीन अंकों की संख्या का प्रतिनिधित्व करते हैं।
आप प्रारंभिक हेडर के रूप में पेज से स्टेटस ट्रांसफर कर सकते हैं, उदाहरण के लिए हेडर ("http / 1.1 200 Ok")।
पृष्ठ साझाकरण प्रक्रिया को गति देने के लिए, वहाँ थाकैशिंग का आविष्कार किया। पृष्ठ को आपके कंप्यूटर पर स्थानीय संग्रहण में सहेजा गया है। अब आपको हर बार हेडर में बड़ी फाइलें भेजने की जरूरत नहीं है। आपको केवल यह सुनिश्चित करने की आवश्यकता है कि होस्टिंग और क्लाइंट पर जानकारी समान है।
होस्ट किए गए विशेष कैश क्वेरी स्ट्रिंग,क्लाइंट से हेडर प्राप्त करने के बाद, यह जांचता है कि क्या यह पेज के लिए कैश है। यदि यह नहीं है, तो यह सर्वर से इसका अनुरोध करता है। भविष्य में, ब्राउज़र तक पहुंचने से पहले, प्रोटोकॉल केवल यह जांच करेगा कि सर्वर पर कैश बदल गया है या नहीं।
पर संपीड़ित जानकारी की जाँच करने के लिएप्रासंगिकता, HTTP हेडर समाप्ति तिथि में संकेतित है। क्लाइंट जानकारी भेजता है कि कौन सी फाइलें स्थानीय रूप से संग्रहीत हैं, और सर्वर इसके संस्करण को इंगित करता है। यदि वे मेल खाते हैं, तो ब्राउज़र बस कैश के अपने संस्करण को प्रदर्शित करता है।
एसईओ अनुकूलन के लिए, आपको निर्दिष्ट करना होगाHTTP हेडर में दिनांक। इन उद्देश्यों के लिए, अंतिम-संशोधित का उपयोग किया जाता है। इसके अलावा, कैश को एक निश्चित भंडारण समय के बाद अपडेट किया जा सकता है। इसके लिए एक्सपायर का इस्तेमाल किया जाता है। कैशिंग को कॉन्फ़िगर करने के लिए, कैश-कंट्रोल का उपयोग किया जाता है, जिसके लिए आप पृष्ठ से बचत जानकारी को सक्षम या अक्षम कर सकते हैं।
कैशिंग की स्थापना सही ढंग से करने से आप जल्दी से अनुमति देते हैंखोज इंजन परिणामों के शीर्ष पर अपने संसाधनों को बढ़ावा देना। यैंडेक्स और Google एल्गोरिदम समय-समय पर साइट के पृष्ठों पर जाते हैं और अपने अभिलेखागार में इसके कैश को बचाते हैं। कुछ समय बाद, वे जानकारी की प्रासंगिकता की जांच करने के लिए सर्वर से संपर्क करते हैं। यदि जानकारी बदल दी गई है, तो खोज इंजन सर्वर पर फ़ाइलें अपडेट की जाती हैं, और प्राप्त डेटा को फिर से अनुक्रमित किया जाता है।
कुछ हेडर में पास करने की सलाह देते हैंवर्तमान तिथि को अंतिम रूप दिया गया, उम्मीद है कि रोबोट इस वजह से अपने लेख को खोज परिणामों में सबसे ऊपर रखेगा। लेकिन यह पता चलता है कि एल्गोरिथ्म को कैश के बारे में जानकारी को अपने अंदर बदलना होगा और हर बार इसे फिर से अनुक्रमित करना होगा। यह हमेशा अच्छे परिणाम नहीं देता है और कभी-कभी केवल लेख की स्थिति को खराब कर सकता है।
हर बार होस्टिंग उपयोगकर्ता के साथ संवाद करने के लिएब्राउज़र के एड्रेस बार में एक URL लिंक दर्ज करता है। प्रतीकों के इस सेट में एक निश्चित संरचना होती है, और आवश्यक जानकारी इसके माध्यम से प्रेषित होती है। लिंक संरचना के पांच भाग हैं:
लिंक की मदद से आप न केवल संदर्भित कर सकते हैंएचटीटीपी, पीएचपी, इत्यादि जैसे पेज उनके माध्यम से, आप डेटाबेस खोज सकते हैं या किसी अन्य कंप्यूटर पर जानकारी भेज सकते हैं। इस पद्धति का उपयोग करते हुए, हैकर अक्सर SQL इंजेक्शन लगाते हैं और विभिन्न तरीकों का उपयोग करके साइट के डेटाबेस से जानकारी चुराते हैं।
URL का नुकसान समर्थन की कमी हैअन्य अक्षर - मुख्य रूप से लैटिन का उपयोग किया जाता है। इस वजह से, प्रकाशन से पहले लेख के संक्षिप्त शीर्षक पर सही ढंग से विचार करना आवश्यक है। आखिरकार, संदर्भ द्वारा एक खोज इंजन संसाधन की उपयोगिता और उस जानकारी का मूल्यांकन करता है जो पृष्ठ उपयोगकर्ता को प्रदान कर सकता है। इसलिए, एसईओ अनुकूलन के दौरान, लेख के लिए सही यूआरएल के गठन पर विशेष ध्यान दिया जाना चाहिए।