फ़ॉरवर्ड प्रॉक्सी करने की सुविधा कॉन्फ़िगर करें

फ़ॉरवर्ड प्रॉक्सी एक सिंगल पॉइंट देते हैं जिससे कई मशीन किसी बाहरी सर्वर को अनुरोध भेजती हैं. वे सुरक्षा नीतियों को लागू कर सकते हैं, अनुरोधों को लॉग कर सकते हैं, उनका विश्लेषण कर सकते हैं, और दूसरी कार्रवाइयां कर सकते हैं, ताकि आपके कारोबार के नियमों का पालन किया जा सके. Edge के साथ, फ़ॉरवर्ड प्रॉक्सी सर्वर आम तौर पर आपके प्रॉक्सी और प्रॉक्सी के आखिर में मौजूद बैकएंड (बैकएंड टारगेट सर्वर) होता है.

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

प्रॉक्सी को फ़ॉरवर्ड करने के लिए, एमपी को कॉन्फ़िगर करने का तरीका:

  1. MP में, इस फ़ाइल में बदलाव करें:
    /opt/apigee/customer/application/message-processor.properties

    अगर message-processor.properties फ़ाइल मौजूद नहीं है, तो उसे बनाएं.

  2. नीचे दी गई टेबल में बताई गई प्रॉक्सी से जुड़ी प्रॉपर्टी सेट करने के लिए, फ़ाइल में बदलाव करें.
  3. पक्का करें कि प्रॉपर्टी की फ़ाइल का मालिकाना हक 'apigee' उपयोगकर्ता के पास हो:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
  4. प्रॉपर्टी में किए गए बदलाव सेव करें.
  5. एमपी को रीस्टार्ट करें, जैसा कि इस उदाहरण में दिखाया गया है:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

नीचे दी गई टेबल में message-processor.properties फ़ाइल की उन प्रॉपर्टी के बारे में बताया गया है जिनका इस्तेमाल करके, किसी बैकएंड सर्वर पर प्रॉक्सी के ज़रिए आगे बढ़ने के लिए एमपी को कॉन्फ़िगर किया जाता है:

प्रॉपर्टी जानकारी
conf_http_HTTPClient.use.proxy

प्रॉक्सी प्रॉक्सी का इस्तेमाल करने की अनुमति देता है. डिफ़ॉल्ट वैल्यू true है. इसका मतलब है कि आपके पास अपने प्रॉक्सी कॉन्फ़िगरेशन में काम के एक्सएमएल को शामिल करके, प्रॉक्सी प्रॉक्सी लेयर में फ़ॉरवर्ड प्रॉक्सी का इस्तेमाल करने का विकल्प है.

अगर इस वैल्यू को false पर सेट किया जाता है, तो किसी फ़ॉरवर्ड प्रॉक्सी का इस्तेमाल नहीं किया जा सकता.

conf_http_HTTPClient.use.tunneling

डिफ़ॉल्ट रूप से, Edge सभी ट्रैफ़िक के लिए टनलिंग का इस्तेमाल करता है. टनलिंग को डिफ़ॉल्ट रूप से बंद करने के लिए, इस प्रॉपर्टी को "गलत" पर सेट करें.

use.proxy.host.header.with.target.uri

टारगेट होस्ट और पोर्ट को Host हेडर के तौर पर सेट करता है. डिफ़ॉल्ट रूप से, प्रॉक्सी होस्ट और पोर्ट, Host हेडर के तौर पर सेट होते हैं. इस प्रॉपर्टी को सिर्फ़ टारगेट एंडपॉइंट में सेट किया जा सकता है. उदाहरण के लिए:

<HTTPTargetConnection>
    <Properties>
        <Property name="use.proxy.host.
         header.with.target.uri">true
        </Property>
    </Properties>
    <URL>https://mocktarget.apigee.net/
     my-target</URL>
</HTTPTargetConnection>
conf/http.properties+HTTPClient.proxy.type

एचटीटीपी प्रॉक्सी के टाइप को एचटीटीपी या एचटीटीपीएस के तौर पर तय करें. डिफ़ॉल्ट रूप से, यह "एचटीटीपी" का इस्तेमाल करता है.

conf/http.properties+HTTPClient.proxy.host

यह होस्ट का नाम या आईपी पता बताता है, जिस पर एचटीटीपी प्रॉक्सी चल रहा हो.

conf/http.properties+HTTPClient.proxy.port

उस पोर्ट के बारे में बताता है जिस पर एचटीटीपी प्रॉक्सी चल रहा है. अगर इस प्रॉपर्टी को शामिल नहीं किया जाता है, तो डिफ़ॉल्ट रूप से यह एचटीटीपी के लिए पोर्ट 80 और एचटीटीपीएस के लिए पोर्ट 443 का इस्तेमाल करती है.

conf/http.properties+HTTPClient.proxy.user
conf/http.properties+HTTPClient.proxy.password

अगर एचटीटीपी प्रॉक्सी को पुष्टि करने के लिए सामान्य तरीके की ज़रूरत है, तो अनुमति की जानकारी देने के लिए इन प्रॉपर्टी का इस्तेमाल करें.

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

conf_http_HTTPClient.use.proxy=true
conf_http_HTTPClient.use.tunneling=false
conf/http.properties+HTTPClient.proxy.type=HTTP
conf/http.properties+HTTPClient.proxy.host=my.host.com
conf/http.properties+HTTPClient.proxy.port=3128
conf/http.properties+HTTPClient.proxy.user=USERNAME
conf/http.properties+HTTPClient.proxy.password=PASSWORD

फ़ॉरवर्ड प्रॉक्सी सर्वर को एमपी के लिए कॉन्फ़िगर किया जाता है. ऐसा होने पर, एपीआई प्रॉक्सी से बैकएंड टारगेट पर जाने वाला ट्रैफ़िक, एचटीटीपी फ़ॉरवर्ड प्रॉक्सी सर्वर से होकर जाता है. एपीआई प्रॉक्सी के किसी खास टारगेट के लिए ट्रैफ़िक, सीधे बैकएंड टारगेट पर जाना चाहिए. इसके लिए, फ़ॉरवर्ड प्रॉक्सी को बायपास करें. इसके बाद, एचटीटीपी फ़ॉरवर्ड प्रॉक्सी को बदलने के लिए, नीचे दी गई प्रॉपर्टी को TargetEndpoint पर सेट करें:

<Property name="use.proxy">false</Property>

टारगेट एंडपॉइंट प्रॉपर्टी को सेट अप करने के बारे में ज़्यादा जानकारी के लिए, एंडपॉइंट प्रॉपर्टी का रेफ़रंस देखें. इसमें, टारगेट एंडपॉइंट के कनेक्शन को कॉन्फ़िगर करने का तरीका भी शामिल है.

डिफ़ॉल्ट रूप से, सभी टारगेट के लिए फ़ॉरवर्ड प्रॉक्सी सुविधा को बंद करने के लिए, इस फ़ाइल को अपनी message-processor.properties फ़ाइल में सेट करें:

conf_http_HTTPClient.use.proxy=false

इसके बाद, ऐसे किसी भी TargetEndpoint के लिए use.proxy को "true" पर सेट करें जिसे आप एचटीटीपी फ़ॉरवर्ड प्रॉक्सी पर भेजना चाहें:

<Property name="use.proxy">true</Property>

डिफ़ॉल्ट रूप से, Edge, टनलिंग का इस्तेमाल प्रॉक्सी पर आने वाले ट्रैफ़िक के लिए करता है. डिफ़ॉल्ट रूप से टनलिंग बंद करने के लिए, message-processor.properties फ़ाइल में इस प्रॉपर्टी को सेट करें:

conf_http_HTTPClient.use.tunneling=false

अगर आपको किसी खास टारगेट के लिए टनलिंग बंद करनी है, तो टारगेट एंडपॉइंट में use.proxy.tunneling प्रॉपर्टी को सेट करें. अगर टारगेट में TLS/एसएसएल इस्तेमाल किया जाता है, तो इस प्रॉपर्टी को अनदेखा कर दिया जाता है. साथ ही, मैसेज हमेशा टनल के ज़रिए भेजा जाता है:

<Property name="use.proxy.tunneling">false</Property>

एज एपीआई के तौर पर खुद को काम करने के लिए - बैकएंड सेवाओं से अनुरोध पाने और उन्हें एंटरप्राइज़ से बाहर इंटरनेट पर रूट करने के लिए - पहले एज पर एक एपीआई प्रॉक्सी सेट अप करें. इसके बाद, बैकएंड सेवा, एपीआई प्रॉक्सी से अनुरोध कर सकती है. इसके बाद, उसे बाहरी सेवाओं से कनेक्ट किया जा सकता है.