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


1772

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


51
यह अपाचे डॉक्स में भी अच्छी तरह से समझाया गया है।
पाओलो

3
@ पाओलो जिसने विकिपीडिया लेख की तुलना में इसे समझना बहुत आसान बना दिया । शायद मुझे विकिपीडिया लेख में अंततः उस जानकारी को संपादित करने के लिए चारों ओर जाना चाहिए ...
RastaJedi

आइए कहते हैं कि मेरे पास होस्ट ए है जिसे सी होस्ट करने के लिए कनेक्ट करने की आवश्यकता है, लेकिन सीधे नहीं। इसके बजाय, इसे होस्ट प्रविष्टि या संभवतः डीएनएस के साथ कॉन्फ़िगर किया गया है, बी को कॉल करने के लिए जो सी। सी के लिए अनुरोध की परवाह नहीं करता है या बी के बारे में नहीं जानता है क्या यह एक आगे का प्रॉक्सी या रिवर्स प्रॉक्सी है?
डैनियल लीच

यदि होस्ट ए को पहले बी होस्ट से संपर्क किए बिना सी होस्ट करने के लिए नहीं मिल सकता है, तो होस्ट बी एक पारंपरिक फॉरवर्ड या "आउटबाउंड" प्रॉक्सी सर्वर है।
टेलरमोनाकेली

5
फॉरवर्ड प्रॉक्सिस क्लाइंट एनोनिमस (यानी, तोर को लगता है) को अनुदान देते हैं। रिवर्स प्रॉक्सि बैक सर्वर एनोनिमस (यानी, डीएमजेड के पीछे सर्वर सोचते हैं) को अनुदान देता है।
8bitjunkie

जवाबों:


2968

पहले के उत्तर सटीक थे, लेकिन शायद बहुत उलझे हुए थे। मैं कुछ उदाहरणों को जोड़ने की कोशिश करूंगा।

सबसे पहले, "प्रॉक्सी" शब्द किसी का वर्णन करता है या किसी और की ओर से अभिनय करता है।

कंप्यूटर क्षेत्र में, हम एक सर्वर को दूसरे कंप्यूटर की ओर से कार्य करने के बारे में बता रहे हैं।

पहुंच के उद्देश्यों के लिए, मैं अपनी चर्चा को वेब प्रॉक्सी तक सीमित कर दूंगा - हालाँकि, प्रॉक्सी का विचार वेबसाइटों तक सीमित नहीं है।

फॉरवर्ड प्रॉक्सी

वेब प्रॉक्सी की अधिकांश चर्चा प्रॉक्सी के प्रकार को "फॉरवर्ड प्रॉक्सी" के रूप में जाना जाता है।

इस मामले में, प्रॉक्सी घटना यह है कि "फॉरवर्ड प्रॉक्सी" मूल अनुरोधकर्ता की ओर से किसी अन्य वेब साइट के डेटा को पुनः प्राप्त करता है।

3 कंप्यूटरों की एक कहानी (भाग I)

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

  • एक्स = आपका कंप्यूटर, या इंटरनेट पर "क्लाइंट" कंप्यूटर
  • Y = प्रॉक्सी वेब साइट ,xy.example.org
  • Z = आप जिस वेब साइट पर जाना चाहते हैं, वह www.example.net है

आम तौर पर, एक सीधे से जुड़ जाएगा X --> Z.

हालांकि, कुछ स्थितियों में, इसके लिए बेहतर है Y --> Zकी ओर से Xहै, जो चेन के रूप में इस प्रकार है: X --> Y --> Z

एक्स क्यों आगे प्रॉक्सी सर्वर का उपयोग करना चाहते हैं कारण:

यहाँ एक फॉरवर्ड प्रॉक्सी सर्वर के उपयोग की एक (बहुत) आंशिक सूची है:

  • 1) X सीधे Z तक पहुँचने में असमर्थ है क्योंकि

    • a) Xइंटरनेट कनेक्शन पर प्रशासनिक अधिकार वाले किसी व्यक्ति ने साइट तक सभी पहुंच को अवरुद्ध करने का निर्णय लिया है Z

      • उदाहरण:

        • स्टॉर्म वर्म वायरस लोगों को आने जाने में धोखा देकर फैल रहा है familypostcards2008.com, इसलिए सिस्टम प्रशासक ने उपयोगकर्ताओं को अनजाने में खुद को संक्रमित करने से रोकने के लिए साइट तक पहुंच को अवरुद्ध कर दिया है।

        • एक बड़ी कंपनी के कर्मचारी बहुत अधिक समय बर्बाद कर रहे हैं facebook.com, इसलिए प्रबंधन व्यावसायिक घंटों के दौरान अवरुद्ध पहुंच चाहता है।

        • एक स्थानीय प्राथमिक विद्यालय playboy.comवेबसाइट तक इंटरनेट पहुंच को रोक देता है ।

        • एक सरकार समाचारों के प्रकाशन को नियंत्रित करने में असमर्थ है, इसलिए यह साइटों को अवरुद्ध करके, जैसे कि समाचारों तक पहुंच को नियंत्रित करता है wikipedia.orgटीओआर या फ्रीनेट देखें ।

    • b) प्रशासक Zने ब्लॉक कर दिया है X

      • उदाहरण:

        • Z के व्यवस्थापक ने X से आने वाले हैकिंग प्रयासों पर ध्यान दिया है, इसलिए व्यवस्थापक ने X के IP पते (और / या netrange) को अवरुद्ध करने का निर्णय लिया है।

        • Z एक फोरम वेबसाइट है। Xमंच स्पैमिंग है। Z ब्लॉक X।

समीक्षा प्रॉक्सी

3 कंप्यूटरों की एक कहानी (भाग II)

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

  • एक्स = आपका कंप्यूटर, या इंटरनेट पर "क्लाइंट" कंप्यूटर
  • Y = रिवर्स प्रॉक्सी वेब साइट ,xy.example.com
  • Z = आप जिस वेब साइट पर जाना चाहते हैं, वह www.example.net है

आम तौर पर, एक सीधे से जुड़ जाएगा X --> Z.

हालांकि, कुछ परिदृश्यों में, प्रशासक के Zलिए प्रत्यक्ष पहुंच को प्रतिबंधित या अस्वीकार करना और आगंतुकों को पहले Y के माध्यम से जाने के लिए मजबूर करना बेहतर है। तो, के रूप में पहले, हम डेटा के द्वारा प्राप्त किया जा रहा है Y --> Zकी ओर से Xहै, जो चेन प्रकार है: X --> Y --> Z

"फॉरवर्ड प्रॉक्सी" की तुलना में इस बार अलग क्या है, इस बार उपयोगकर्ता Xको पता नहीं है कि वह एक्सेस कर रहा है Z, क्योंकि उपयोगकर्ता Xकेवल यह देखता है कि वह किसके साथ संचार कर रहा है Y। सर्वर Zग्राहकों के लिए अदृश्य है और केवल रिवर्स प्रॉक्सी Yबाहरी रूप से दिखाई देता है। क्लाइंट पर रिवर्स प्रॉक्सी को नो (प्रॉक्सी) कॉन्फ़िगरेशन की आवश्यकता होती है।

क्लाइंट को Xलगता है कि वह केवल Y( X --> Y) के साथ संचार कर रहा है , लेकिन वास्तविकता यह है कि Yसभी संचार ( X --> Y --> Zफिर से) को अग्रेषित करना ।

क्यों Z एक रिवर्स प्रॉक्सी सर्वर सेट करना चाहेगा:

  • 1) Z अपनी वेबसाइट पर सभी ट्रैफ़िक को पहले Y से गुजरने के लिए बाध्य करना चाहता है।
    • a) Z की एक बड़ी वेब साइट है जिसे लाखों लोग देखना चाहते हैं, लेकिन एक एकल वेब सर्वर सभी ट्रैफ़िक को संभाल नहीं सकता है। तो Z कई सर्वर सेट करता है और इंटरनेट पर एक रिवर्स प्रॉक्सी डालता है जो Z पर जाने के लिए उपयोगकर्ताओं को उनके निकटतम सर्वर पर भेजेगा। यह कंटेंट डिस्ट्रीब्यूशन नेटवर्क (CDN) कॉन्सेप्ट का काम करता है।
  • 2) Z का व्यवस्थापक सर्वर पर होस्ट की गई सामग्री के प्रतिशोध के बारे में चिंतित है और मुख्य सर्वर को सीधे जनता के सामने उजागर नहीं करना चाहता है।
    • क) "कनाडाई फ़ार्मेसी" जैसे स्पैम ब्रांडों के मालिक हज़ारों सर्वरों के लिए दिखाई देते हैं, जबकि वास्तव में अधिकांश वेबसाइटों में बहुत कम सर्वरों की मेजबानी होती है। इसके अतिरिक्त, स्पैम के बारे में शिकायतों का दुरुपयोग केवल सार्वजनिक सर्वर को बंद करेगा, मुख्य सर्वर को नहीं।

उपरोक्त परिदृश्यों में, Zचुनने की क्षमता है Y

पोस्ट से विषयों के लिंक:

सामग्री वितरण प्रसार

फॉरवर्ड प्रॉक्सी सॉफ्टवेयर (सर्वर साइड)

HTTP (सर्वर साइड) के लिए रिवर्स प्रॉक्सी सॉफ्टवेयर

टीसीपी (सर्वर साइड) के लिए रिवर्स प्रॉक्सी सॉफ्टवेयर

यह सभी देखें:


1
TAM (टिवोली एक्सेस मैनेजर) भी एक रिवर्स प्रॉक्सी सर्वर है, है ना?
क्लार्क बाओ

2
वैचारिक रूप से, हम "रिवर्स प्रॉक्सी" का उल्लेख कर सकते हैं या फिर "मजबूर" प्रॉक्सी के रूप में सोच सकते हैं?
थॉमस

3
"जो उपयोगकर्ताओं को सर्वर के सबसे करीब भेज देगा" - बिंदु क्या है? सभी ट्रैफ़िक उस प्रॉक्सी सर्वर के माध्यम से जाएंगे, है ना? इसलिए इससे कोई फर्क नहीं पड़ता कि इसके पीछे 'लोकल' सर्वर का स्थान कहाँ है। या मुझे कुछ याद आ रहा है?
पावेल

2
@Pavel शायद "उनके सबसे नज़दीकी सर्वर" सबसे अच्छा विवरण नहीं है। अधिक "सर्वर के पूल में लोड वितरित करें" बेहतर विवरण है। यह उदाहरण एक रिवर्स प्रॉक्सी लोड बैलेंसर का वर्णन कर रहा था।
JDS

6
यह मेरे लिए महत्वपूर्ण था: - आगे:, (X --> Y) --> Zरिवर्स X --> (Y --> Z):।
Druckles

538

सरल परिभाषाओं की एक जोड़ी होगी:

फॉरवर्ड प्रॉक्सी: एक अनुरोधकर्ता (या सेवा उपभोक्ता) की ओर से कार्य करना

रिवर्स प्रॉक्सी: सेवा / सामग्री निर्माता की ओर से कार्य करना।


413

मुझे नीचे का चित्र बहुत मददगार लगा। यह बस क्लाइंट से सर्वर से इंटरनेट पर आगे बनाम रिवर्स प्रॉक्सी सेटअप की वास्तुकला को दर्शाता है । यह छवि आपको qyb2zm302 के उत्तर और अन्य उत्तरों को बेहतर ढंग से समझने में मदद करेगी ।

फॉरवर्ड प्रॉक्सी बनाम रिवर्स प्रॉक्सी

आप इस वीडियो को पीटर सिल्वा द्वारा F5 के देवसेंटरल से भी देख सकते हैं ।

चित्र स्रोत: Quora । हालांकि, मार्टिज़न पीटरर्स के अनुसार , यह छवि developpez.com पर पल्स सिक्योर कम्युनिटी या जूलियन पाउली की साइट (फ्रेंच में) से हो सकती है।

इसने मुझे क्लासिक कहावत की याद दिला दी:

एक तस्वीर हज़ार शब्दों पर भारी है।


9
यह वास्तव में आप को देखने की जरूरत है। अपने ब्राउज़र में एक प्रॉक्सी सेट करना ताकि नेटफ्लिक्स को यह पता न चले कि आप किस देश में हैं, एक फॉरवर्ड प्रॉक्सी है; एक अपस्ट्रीम सेवा जो एक आने वाले अनुरोध को निर्देशित करती है (शायद आप दो सर्वरों को एक अनुरोध भेजना चाहते हैं) एक रिवर्स प्रॉक्सी है।
काइल चड्ढा

5
फॉरवर्ड प्रॉक्सी इंटरनेट पर भी हो सकता है
मैक

7
अंतिम उत्तर में सबसे अच्छी तस्वीर। धन्यवाद। :) एक रिवर्स प्रॉक्सी को "लोड बैलेंसर" के रूप में भी जाना जाता है और सर्वर-साइड पर काम करता है (विभिन्न सर्वरों को लोड वितरित करता है), जबकि एक फॉरवर्ड प्रॉक्सी क्लाइंट पक्ष का समर्थन करता है।
कोडप्लेब

1
कोरा लेखक छवि का मूल लेखक नहीं है, क्योंकि 2013 से एकल संशोधन वाला यह पृष्ठ एक वर्ष पुराना है।
मार्टिन पीटर्स

1
यह हो सकता है कि 2009 से यह फ्रेंच ट्यूटोरियल स्रोत है; 2009 वेब संग्रह प्रतिलिपि जावास्क्रिप्ट मुद्दों (जारी रीडायरेक्ट) चल रहा है, और छवियों केवल 2017 में संगृहीत किए गए, लेकिन बाद में स्रोत के रूप में स्रोत के संदर्भ में एक ही चित्र URL।
मार्टिन पीटर्स

230

फॉरवर्ड प्रॉक्सी बनाम रिवर्स प्रॉक्सी (2012) फॉरवर्ड और रिवर्स प्रॉक्सी के बीच के अंतर को बहुत स्पष्ट रूप से समझाता है।

qyb2zm302 का उत्तर अच्छी तरह से परदे के पीछे के अनुप्रयोगों का विवरण देता है, लेकिन यह आगे और पीछे के परदे के पीछे मूल अवधारणा पर फिसल जाता है। रिवर्स प्रॉक्सी के लिए, X → Y → Z, X इसके विपरीत के बजाय Y और Z के बारे में जानता है।

एक प्रॉक्सी केवल संचार के लिए एक बिचौलिया है (अनुरोधों + प्रतिक्रियाओं)। क्लाइंट <-> प्रॉक्सी <-> सर्वर

  • क्लाइंट प्रॉक्सी: ( क्लाइंट <-> प्रॉक्सी ) <-> सर्वर

क्लाइंट की ओर से प्रॉक्सी कार्य करता है। ग्राहक श्रृंखला में शामिल सभी तीन मशीनों के बारे में जानता है। सर्वर नहीं करता है।

  • सर्वर प्रॉक्सी: क्लाइंट <-> ( प्रॉक्सी <-> सर्वर )

सर्वर की ओर से प्रॉक्सी कार्य करता है। क्लाइंट केवल प्रॉक्सी के बारे में जानता है। सर्वर पूरी चेन जानता है।

यह मुझे लगता है कि आगे और रिवर्स बस भ्रमित कर रहे हैं, ग्राहक और सर्वर प्रॉक्सी के लिए परिप्रेक्ष्य-निर्भर नाम । मैं स्पष्ट संचार के लिए, बाद के लिए पूर्व को छोड़ने का सुझाव देता हूं।

बेशक, इस मामले को और जटिल करने के लिए, हर मशीन विशेष रूप से क्लाइंट या सर्वर नहीं है। यदि संदर्भ में अस्पष्टता है, तो यह स्पष्ट रूप से निर्दिष्ट करना सबसे अच्छा है कि प्रॉक्सी कहाँ है, और संचार कि यह सुरंग है।


3
यह उत्तर httpd.apache.org/docs/2.0/mod/mod_proxy.html#forwardreverse के अनुरूप है और इसे स्पष्ट रूप से समझाने में मदद करता है
ग्रेग वुड्स

7
ऐसा लगता है कि इस तुलना में सबसे अधिक प्रासंगिक विशेषता यह है कि कौन-कौन जानता है। फॉरवर्ड प्रॉक्सी: क्लाइंट दोनों प्रॉक्सी को जानता है (यह वास्तव में इसे कॉन्फ़िगर किया गया है) और लक्ष्य सर्वर (जैसा कि यह सर्वर के url के लिए अनुरोध करता है), जबकि, रिवर्स प्रॉक्सी के मामले में, क्लाइंट प्रॉक्सी को एक लक्ष्य सर्वर के रूप में जानता है (यह नहीं जानता कि प्रॉक्सी वास्तव में क्या कह रहा है; यह एक सर्वर या अधिक हो सकता है)। आगे वाले प्रॉक्सी के साथ, सर्वर को यह पता नहीं होता है कि क्लाइंट वास्तव में कौन हैं, क्योंकि प्रॉक्सी "फॉरवर्ड" के लिए अनुरोध करता है। फ़ॉरवर्ड प्रॉक्सी: क्लाइंट छिपाएँ। रिवर्स प्रॉक्सी: सर्वर को छिपाएं।
बेलुन

@Protongun ".. प्रॉक्सी केवल संचार (अनुरोधों + प्रतिक्रियाओं) के लिए एक बिचौलिया है .." पहले स्थान पर प्रॉक्सी की क्या आवश्यकता है? कृपया स्पष्ट करें। IMHO इस उत्तर को एक स्वीकार किया जाना चाहिए था
विक्रमवी

इस पोस्ट की पहली कड़ी हर किसी के लिए स्पष्ट और समझने में आसान बनाती है
महापुरूष

@ बेलन ने काफी सरल शब्दों / शब्दों में समझाया।
Ilangeeran

129

कुछ आरेख मदद कर सकते हैं:

फॉरवर्ड प्रॉक्सी

फॉरवर्ड प्रॉक्सी

प्रॉक्सी को उलट दें

प्रॉक्सी को उलट दें


8
क्या यह? वह एक ही जैसे दिखते है! एक प्रतिक्रिया को फिर से लिखने के बारे में ऐसा क्या खास है जो प्रॉक्सी को "रिवर्स" प्रॉक्सी बनाता है?
8bitjunkie

2
@ 8bitjunkie इसके परिप्रेक्ष्य के बारे में। ध्यान दें कि, फॉरवर्ड प्रॉक्सी के लिए, क्लाइंट जानता है कि यह प्रॉक्सी सर्वर के साथ संचार कर रहा है। रिवर्स प्रॉक्सी के लिए, क्लाइंट को लगता है कि यह सीधे home.com के साथ संचार कर रहा है। परदे के पीछे भी अलग-अलग कार्यान्वयन हैं। रिवर्स प्रॉक्सी बहुत बेवकूफ हो सकता है। बस इसके लिए पता बदलना होगा और कॉल को पास करना होगा। क्लाइंट पर अधिक नेटवर्किंग तर्क, प्रॉक्सी पर कम। दूसरी ओर, आगे वाले प्रॉक्सी को किसी तरह से यह जानने की जरूरत है कि प्रॉक्सी.कॉम () के लिए एक सेवा के लिए कॉल की आवश्यकता है। क्लाइंट पर कम नेटवर्किंग तर्क, प्रॉक्सी पर अधिक।
केविन

1
"इसका अनुवाद myhome.myhosting.com से hom.com करने के लिए है" मुझे अनुवाद का हिस्सा नहीं मिला। प्रतिक्रिया शीर्षलेख या कुछ और के पुन: भाग की तरह?
2227 बजे 1252748

इसके अलावा रिवर्स प्रॉक्सी के कारणों में से एक (जो मुझे स्वीकृत उत्तर से समझ में आया है) के आधार पर यह है कि ऐसा करने का उद्देश्य कई सर्वरों के बीच भारी आवक को विभाजित करना है। इस श्रृंखला में ऐसा कहां होता है? क्या वह दूसरा "इनबाउंड नियम" है?
1252748 22

@ १२५२ mean४ mean के बारे में १), अनुवाद का सीधा मतलब होगा कि यूआरएल की मैपिंग और उपयुक्त यूआरएल के लिए अनुरोध जारी करना। के बारे में 2), हाँ, आप सर्वर को कॉन्फ़िगर कर सकते हैं, उदाहरण के लिए, सर्वरों के बीच अनुरोधों को संतुलित करने के लिए राउंड रॉबिन का उपयोग करें।
मारिया इनेस पर्निसारी

72

अंतर मुख्य रूप से तैनाती में है। वेब फॉरवर्ड और रिवर्स प्रॉक्सिस में सभी एक ही अंतर्निहित विशेषताएं हैं। वे विभिन्न स्वरूपों में HTTP अनुरोधों के अनुरोधों को स्वीकार करते हैं और आमतौर पर मूल या संपर्क सर्वर तक पहुंचकर प्रतिक्रिया प्रदान करते हैं।

पूरी तरह से चित्रित सर्वरों में आमतौर पर एक्सेस कंट्रोल, कैशिंग और कुछ लिंक-मैपिंग फीचर होते हैं।

एक फॉरवर्ड प्रॉक्सी एक प्रॉक्सी है जिसे क्लाइंट मशीन को कॉन्फ़िगर करके एक्सेस किया जाता है। क्लाइंट को प्रॉक्सी सुविधाओं (पुनर्निर्देशन, प्रॉक्सी प्रमाणीकरण, आदि) के लिए प्रोटोकॉल समर्थन की आवश्यकता होती है। प्रॉक्सी उपयोगकर्ता अनुभव के लिए पारदर्शी है, लेकिन एप्लिकेशन के लिए नहीं।

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

वास्तव में, एक एकल प्रॉक्सी उदाहरण अलग-अलग क्लाइंट आबादी के लिए एक ही समय में आगे और रिवर्स प्रॉक्सी के रूप में चल सकता है।


बस सुनिश्चित करने के लिए, एक आगे प्रॉक्सी क्लाइंट-साइड है और रिवर्स प्रॉक्सी सर्वर-साइड है?
य्वेस

4
@yves। एक प्रॉक्सी एक सर्वर भी है। यह सिर्फ इतना है कि क्लाइंट को एक स्थानीय कॉन्फ़िगरेशन की आवश्यकता है ताकि वे संवाद कर सकें। जबकि रिवर्स प्रॉक्सी के लिए सर्वर पर ही कॉन्फ़िगरेशन की आवश्यकता होती है। उनके भौतिक नोड्स 'सर्वर साइड' पर हैं।
अदीब अउरी

बस सामान्य जानकारी के लिए, सभी परदे के पीछे और आगे के रूप में काम नहीं कर सकते हैं, उदाहरण के लिए, सॉक्स कर सकते हैं, लेकिन HTTP प्रॉक्सी नहीं।
रस्ताजेडी

60

प्रॉक्सी: यह क्लाइंट की ओर से अनुरोध कर रहा है । तो, सर्वर प्रॉक्सी को प्रतिक्रिया लौटा देगा, और प्रॉक्सी ग्राहक को प्रतिक्रिया भेज देगा। वास्तव में, सर्वर कभी भी यह नहीं सीखेगा कि ग्राहक कौन था (ग्राहक का आईपी पता); यह केवल प्रॉक्सी को जान सकेगा। हालाँकि, क्लाइंट निश्चित रूप से सर्वर को जानता है, क्योंकि यह अनिवार्य रूप से सर्वर के लिए नियत HTTP अनुरोध को प्रारूपित करता है, लेकिन यह सिर्फ प्रॉक्सी को सौंपता है।

यहां छवि विवरण दर्ज करें

रिवर्स प्रॉक्सी: यह सर्वर की ओर से अनुरोध प्राप्त कर रहा है । यह सर्वर से अनुरोध को आगे बढ़ाता है, प्रतिक्रिया प्राप्त करता है और फिर क्लाइंट को प्रतिक्रिया देता है। इस मामले में, ग्राहक कभी भी "सीखना" नहीं होगा जो वास्तविक सर्वर (सर्वर का आईपी पता) था (कुछ अपवादों के साथ); यह केवल प्रॉक्सी को जान सकेगा। सर्वर रिवर्स क्लाइंट के कॉन्फ़िगरेशन के आधार पर वास्तविक क्लाइंट को जानता है या नहीं जानता है।

यहां छवि विवरण दर्ज करें


6
मुझे लगता है कि मैं आपकी परिभाषाओं को पीछे से कॉपी और पेस्ट कर सकता हूं और वे अभी भी सच होंगे। मुझे नहीं लगता कि यह कोई महत्वपूर्ण अंतर बताता है या स्पष्ट करता है कि रिवर्स प्रॉक्सी के बारे में "रिवर्स" क्या है?
8bitjunkie

6
प्रॉक्सी हमेशा किसी की ओर से कार्य करेगा (दूसरे पक्ष से अपनी पहचान छिपाकर)। "रिवर्स" से तात्पर्य उस साइड को उल्टा करने से है, जो "छिपा हुआ" है, जिसमें पहले मामले पर क्लाइंट (नियमित प्रॉक्सी) और दूसरे मामले में सर्वर (रिवर्स प्रॉक्सी) है। वास्तव में, शब्दों का परस्पर उपयोग किया जा सकता है, यह सिर्फ एक सम्मेलन है जो नियमित प्रॉक्सी के रूप में पहला मामला चुना गया है (शायद ऐतिहासिक कारणों से)। आशा है कि यह समझ में आता है।
डिमोस

43

सबसे अच्छा स्पष्टीकरण यहाँ आरेखों के साथ है:

जबकि क्लाइंट की ओर से एक प्रॉक्सी प्रॉक्सी ( या मेजबान का अनुरोध ) , सर्वर की ओर से एक प्रॉक्सी प्रॉक्सी प्रॉक्सी करता है।

वास्तव में, जबकि एक फॉरवर्ड प्रॉक्सी क्लाइंट की पहचान छुपाता है, एक रिवर्स प्रॉक्सी सर्वर की पहचान छिपाता है।


38

एक प्रॉक्सी सर्वर प्रॉक्सी (और वैकल्पिक रूप से कैश) आउटगोइंग नेटवर्क को इंटरनेट पर विभिन्न आवश्यक-संबंधित सार्वजनिक संसाधनों के लिए अनुरोध करता है। एक रिवर्स प्रॉक्सी इंटरनेट से आने वाले अनुरोधों (और वैकल्पिक रूप से कैश) को पकड़ता है और उन्हें विभिन्न आंतरिक निजी संसाधनों में वितरित करता है, आमतौर पर उच्च उपलब्धता उद्देश्यों के लिए।



28

प्रॉक्सी (आगे प्रॉक्सी):

जब आपके LAN पर कंप्यूटर एक प्रॉक्सी सर्वर से जुड़ते हैं जो इंटरनेट एक्सेस करता है। लाभों में केवल सर्वर शामिल है जो इंटरनेट के संपर्क में है। बाहर के लोग सीधे कंप्यूटर का उपयोग करने में असमर्थ हैं। फॉरवर्ड परदे के पीछे कैशिंग डाउनलोड द्वारा उपयोगकर्ताओं के लिए इंटरनेट का उपयोग बेहतर कर सकते हैं। उनका उपयोग कुछ साइटों तक पहुंच को प्रतिबंधित करने के लिए भी किया जा सकता है। इसके अलावा, केवल प्रॉक्सी सर्वर को एक सार्वजनिक पते की आवश्यकता होगी, न कि ग्राहकों को इससे जुड़ने की।

रिवर्स प्रॉक्सी:

एक रिवर्स प्रॉक्सी एक फॉरवर्ड प्रॉक्सी के विपरीत है। इसके बजाय यह सर्वर से जुड़े होने के कारण प्रॉक्सी की तरह काम करता है। एक दूरस्थ सर्वर तक सीधे पहुंचने के बजाय, एक उपयोगकर्ता रिवर्स प्रॉक्सी के माध्यम से जाएगा और वहां से उपयुक्त सर्वर को निर्देशित किया जाएगा। केवल रिवर्स प्रॉक्सी को एसएसएल प्रमाणपत्र की आवश्यकता होगी, केवल एक सार्वजनिक आईपी पते की आवश्यकता होगी, और यह समग्र उपयोगकर्ता अनुभव को बढ़ाने के लिए आने वाले अनुरोधों के लोड संतुलन को संभाल सकता है।

यहां छवि विवरण दर्ज करें

छवि स्रोत: अनुप्रयोग अनुरोध रूटिंग का उपयोग करके एक फॉरवर्ड प्रॉक्सी बनाना


3
IMHO, सबसे सरल / सबसे अच्छा जवाब।
विनीसियस गोनक्लेव्स

12

एक अपाचे परिप्रेक्ष्य से मेरी समझ यह है कि प्रॉक्सी का मतलब है कि यदि साइट x साइट y के लिए प्रॉक्सी करती है, तो x रिटर्न y के लिए अनुरोध करता है।

रिवर्स प्रॉक्सी का मतलब है कि y से प्रतिक्रिया को समायोजित किया जाता है ताकि y के सभी संदर्भ x हो जाएं।

ताकि उपयोगकर्ता यह न बता सके कि एक प्रॉक्सी शामिल है ...


10

मेरी समझ के अनुसार ...

के साथ शुरू करने के लिए, जैसा कि सभी जानते हैं, प्रॉक्सी का अर्थ है "किसी और का प्रतिनिधित्व करने का अधिकार"। अब दो चीजें हैं, आगे और रिवर्स प्रॉक्सी।

फॉरवर्ड प्रॉक्सी

मान लीजिए कि आप "Google" और "Google" को एक्सेस करना चाहते हैं, तो उस विशेष अनुरोध का जवाब देने के लिए सर्वर की संख्या n होगी।

अब इस मामले में, जब आप Google से किसी चीज़ के लिए अनुरोध कर रहे हैं और आप नहीं चाहते कि Google आपके आईपी पते को देखे, तो आप आगे बताए गए प्रॉक्सी का उपयोग करेंगे।

ए → बी → सी

अब यहाँ आप A हैं, B के माध्यम से अनुरोध भेज रहे हैं। इसलिए C यह सोचेगा कि अनुरोध B से आ रहा है, A. नहीं। इस तरह से आप अपने ग्राहकों के आईपी पते को बाहरी दुनिया के सामने न आने से रोक सकते हैं।

प्रॉक्सी को उलट दें

अब इस मामले में, आपको समझने के लिए, हम आगे के प्रॉक्सी के मामले को लेंगे। यहां आपने Google से कुछ के लिए अनुरोध किया है, जो प्रतिक्रिया देने के लिए ऐप सर्वर या किसी अन्य प्रॉक्सी सर्वर को एक अनुरोध भेजने के लिए जा रहा है। तो ये बातें नीचे बताई गई होंगी।

ए → बी → सी

सी → डी

सी ← डी

ए ← बी। सी

उपरोक्त आरेख से आप देख सकते हैं कि B से C को एक अनुरोध भेजा गया है, A से नहीं। C से फिर एक अनुरोध D को भेजा जाएगा। इसी प्रकार प्रतिक्रिया C से D और फिर B और A से जाएगी।

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


10

फॉरवर्ड प्रॉक्सिस क्लाइंट को अनामी (यानी, तोर को लगता है ) प्रदान करते हैं।

रिवर्स प्रॉक्सि बैक सर्वर एनोनिमस (यानी, डीएमजेड के पीछे सर्वर सोचते हैं) को अनुदान देता है।



9

यहाँ एक रिवर्स प्रॉक्सी (लोड बैलेंसर के रूप में) का एक उदाहरण दिया गया है।

एक ग्राहक वेबसाइट.कॉम पर सर्फ करता है और जो सर्वर हिट करता है, उस पर रिवर्स प्रॉक्सी चलती है। रिवर्स प्रॉक्सी पाउंड होता है । पाउंड अनुरोध लेता है और इसके पीछे बैठे तीन एप्लिकेशन सर्वरों में से एक को भेजता है। इस उदाहरण में, पाउंड एक लोड बैलेंसर है। यही है, यह तीन एप्लिकेशन सर्वर के बीच लोड को संतुलित कर रहा है।

एप्लिकेशन सर्वर वेबसाइट सामग्री को क्लाइंट तक वापस भेजते हैं।


8

एक आगे वाला प्रॉक्सी उपयोगकर्ताओं को सेवा प्रदान करता है : यह उपयोगकर्ताओं को सर्वर तक पहुंचने में मदद करता है

एक रिवर्स प्रॉक्सी सर्वर कार्य करता है : यह सर्वर को उपयोगकर्ताओं से बचाता है


4

यदि कोई प्रॉक्सी नहीं

क्लाइंट की ओर से और सर्वर साइड से देखने के लिए समान हैं:

ग्राहक -> सर्वर

प्रतिनिधि

ग्राहक की ओर से:

क्लाइंट -> प्रॉक्सी -> सर्वर

सर्वर की ओर से:

ग्राहक -> सर्वर

प्रॉक्सी को उलट दें

ग्राहक की ओर से:

ग्राहक -> सर्वर

सर्वर की ओर से:

क्लाइंट -> प्रॉक्सी -> सर्वर

इसलिए मुझे लगता है कि अगर यह क्लाइंट यूजर द्वारा सेट किया जाता है, तो इसे प्रॉक्सी set कहा जाता है, अगर इसे सर्वर मैनेजर द्वारा सेट किया जाता है तो यह रिवर्स प्रॉक्सी है।

क्योंकि इसे स्थापित करने के उद्देश्य और कारण अलग-अलग हैं, वे अलग-अलग तरीकों से डेटा के साथ सौदा करते हैं और विभिन्न सॉफ़्टवेयर का उपयोग करते हैं।

   User side          |      Server side
client  <->  proxy  <-->  reverse_proxy <-> real server

बेहतर होगा कि इसका ग्राफिकल रिप्रेजेंटेशन लेकिन अच्छा कंटेंट हो। @ Littlehare
Narendra

3

उपयोगकर्ता के दृष्टिकोण से खोज: प्रॉक्सी या रिवर्स प्रॉक्सी सर्वर के लिए अनुरोध भेजते समय :

  • प्रॉक्सी - दो तर्कों की आवश्यकता है :

    1) क्या प्राप्त करें और 2) जो मध्यवर्ती सर्वर का उपयोग करने के लिए प्रॉक्सी सर्वर है

  • रिवर्स प्रॉक्सी - एक तर्क की आवश्यकता है :

    1) क्या प्राप्त करना है

एक रिवर्स प्रॉक्सी उपयोगकर्ता के लिए किसी अन्य सर्वर से सामग्री प्राप्त नहीं करता है और परिणाम को वापस करता है जैसे कि यह रिवर्स प्रॉक्सी सर्वर से उत्पन्न होता है


1

पिछले जवाबों में से अधिकांश अच्छे हैं, लेकिन मेरी राय में दोनों को अलग करने वाली "रिवर्स" गुणवत्ता को अच्छी तरह से संबोधित करने के लिए कोई भी बहुत करीब नहीं आता है। ऐसा करने के लिए, "रिवर्स" प्रकृति की कल्पना करने का कुछ तरीका अनिवार्य रूप से एक ही चीज़ (एक प्रॉक्सी) को देने की आवश्यकता है, और इसे एक अच्छी तरह से सार करने की आवश्यकता है।

एक प्रॉक्सी (स्पष्ट रूप से "फॉरवर्ड प्रॉक्सी") कई स्थानीय क्लाइंट को किसी एक दूरस्थ सर्वर से जोड़ता है:

c--
   |--p--s
c--

एक रिवर्स प्रॉक्सी कई स्थानीय सर्वरों को किसी एक दूरस्थ क्लाइंट से जोड़ता है (ध्यान दें कि लेआउट कैसे उलटता है):

s--
   |--p--c
s--

यह वास्तव में एक परिप्रेक्ष्य का विषय है और अवधारणा को ठीक से समझने के लिए गैर-आवश्यक (विशेष अवधारणा के लिए) विवरण को अलग करने की आवश्यकता होती है, हालांकि यह बहुत महत्वपूर्ण हो सकता है जब यह प्रॉक्सी ऑपरेशन की व्यावहारिकता की बात आती है। इस तरह के विवरण में यह तथ्य शामिल है कि दोनों परिदृश्यों में वास्तविकता यह है कि कई क्लाइंट कई सर्वरों से जुड़ते हैं, क्लाइंट और सर्वर वास्तव में स्थानीय या दूरस्थ नहीं हो सकते हैं, जहां इंटरनेट क्लाउड स्थित है या क्लाइंट और सर्वर के बीच किस तरह की दृश्यता मौजूद है।


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

फिर से पढ़ें - विशेष रूप से अंतिम पैराग्राफ और ऑपरेशन के कई उदाहरणों में से एक के रूप में "किसी भी एक दूरस्थ ग्राहक" को समझने की कोशिश करें
एलेक्स फॉटियोस

पाठ ठीक है, यह सिर्फ इतना है कि दूसरे आरेख ने मुझे अचानक सोचा "अरे, दूसरे ग्राहक कहां गए?" जब मैंने इसकी तुलना पहले चित्र से की।
जस्टमार्टिन

हाँ, ऐसा इसलिए है क्योंकि क्लाइंट अन्य दो में से कोई भी नहीं है। डेवलपर्स बहुत ही ठोस और विशिष्ट शब्दों में सोचते हैं क्योंकि ऐसा तब होता है जब आप सामान को लागू कर रहे होते हैं, लेकिन यह सोच के समान तरीके अमूर्त के बारे में सोचते समय बहुत मददगार नहीं होते हैं।
एलेक्स फॉटियोस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.