ফরওয়ার্ড প্রক্সি এমন একটি পয়েন্ট প্রদান করে যার মাধ্যমে একাধিক মেশিন এক্সটার্নাল সার্ভারে অনুরোধ পাঠায়। তারা নিরাপত্তা নীতি প্রয়োগ করতে, অনুরোধ লগ ও বিশ্লেষণ করতে এবং অন্যান্য অ্যাকশন নিতে পারে যাতে অনুরোধগুলি আপনার ব্যবসার নিয়ম মেনে চলে। Edge-এর সাথে, একটি ফরওয়ার্ড প্রক্সি সাধারণত আপনার API প্রক্সি এবং একটি এক্সটার্নাল TargetEndpoint (একটি ব্যাকএন্ড টার্গেট সার্ভার)-এর মধ্যে মধ্যস্থতা করে।
Edge ও TargetEndpoint-এর মধ্যে HTTP ফরওয়ার্ড প্রক্সি ব্যবহার করতে, আপনাকে অবশ্যই মেসেজ প্রসেসর (MP)-এ আউটবাউন্ড প্রক্সি সেটিংস কনফিগার করতে হবে। এইসব প্রপার্টি Edge থেকে HTTP ফরওয়ার্ড প্রক্সিতে টার্গেট করা অনুরোধ রাউট করার জন্য MPs কনফিগার করে।
ফরওয়ার্ডিং প্রক্সি করার জন্য MP কনফিগার করতে:
- MP-তে, নিম্নলিখিত ফাইল এডিট করুন:
/opt/apigee/customer/application/message-processor.properties
message-processor.propertiesফাইল না থাকলে, সেটি তৈরি করুন। - নিচে দেওয়া সারণীতে বর্ণিত প্রক্সি-সম্পর্কিত প্রপার্টি সেট করতে ফাইলটি এডিট করুন।
- প্রপার্টি ফাইলের মালিক 'apigee' ব্যবহারকারী কিনা তা নিশ্চিত করুন:
chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- প্রপার্টি ফাইলে আপনার করা পরিবর্তন সেভ করুন।
- MP রিস্টার্ট করুন, যেমন নিম্নলিখিত উদাহরণে দেখানো হয়েছে:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
ব্যাকএন্ড সার্ভারে ফরওয়ার্ড প্রক্সি করার জন্য MP কনফিগার করতে, আপনি যে message-processor.properties
ফাইল ব্যবহার করেন, নিম্নলিখিত সারণীতে তার প্রপার্টি বর্ণনা করা হয়েছে:
| প্রপার্টি | বিবরণ |
|---|---|
conf_http_HTTPClient.use.proxy |
ফরওয়ার্ড প্রক্সি ব্যবহারের অনুমতি দেয়। ডিফল্ট ভ্যালু হল আপনি এই ভ্যালু |
conf_http_HTTPClient.use.tunneling |
ডিফল্ট হিসেবে, Edge সব ট্রাফিকের জন্য টানেলিং ব্যবহার করে। ডিফল্ট হিসেবে টানেলিং বন্ধ করতে, এই প্রপার্টি "false" হিসেবে সেট করুন। |
use.proxy.host.header.with.target.uri |
<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 |
HTTP বা HTTPS হিসেবে HTTP প্রক্সির ধরন নির্দিষ্ট করে। ডিফল্ট হিসেবে, এটি "HTTP" ব্যবহার করে। |
conf/http.properties+HTTPClient.proxy.host |
যেখানে HTTP প্রক্সি চলছে সেই হোস্টের নাম বা IP অ্যাড্রেস নির্দিষ্ট করে। |
conf/http.properties+HTTPClient.proxy.port |
HTTP প্রক্সি যে পোর্টে চলছে সেটি নির্দিষ্ট করে। এই প্রপার্টি বাদ দেওয়া হলে, ডিফল্ট হিসেবে এটি HTTP-এর জন্য পোর্ট ৮০ এবং HTTPS-এর জন্য পোর্ট ৪৪৩ ব্যবহার করে। |
conf/http.properties+HTTPClient.proxy.user conf/http.properties+HTTPClient.proxy.password |
HTTP প্রক্সি সার্ভারে প্রাথমিক যাচাইকরণ প্রয়োজন হলে, যাচাইকরণের বিবরণ দিতে এইসব প্রপার্টি ব্যবহার করুন। |
যেমন:
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
MP-এর জন্য ফরওয়ার্ড প্রক্সি কনফিগার করা থাকলে, API প্রক্সি থেকে ব্যাকএন্ড টার্গেটে যাওয়া সব ট্রাফিক নির্দিষ্ট HTTP ফরওয়ার্ড প্রক্সির মাধ্যমে যায়। কোনও API প্রক্সির নির্দিষ্ট টার্গেটের ট্রাফিক যদি ফরওয়ার্ড প্রক্সি বাইপাস করে সরাসরি ব্যাকএন্ড টার্গেটে যায়, তাহলে HTTP ফরওয়ার্ড প্রক্সি ওভাররাইড করতে TargetEndpoint-এ নিম্নলিখিত প্রপার্টি সেট করুন:
<Property name="use.proxy">false</Property>
টার্গেট এন্ডপয়েন্ট প্রপার্টি সেট করা সম্পর্কে আরও তথ্য পেতে, যার মধ্যে টার্গেট এন্ডপয়েন্টের সাথে কানেকশন কনফিগার করা অন্তর্ভুক্ত, এন্ডপয়েন্ট প্রপার্টি রেফারেন্স দেখুন।
ডিফল্ট হিসেবে সব টার্গেটের জন্য ফরওয়ার্ড প্রক্সি বন্ধ করতে, আপনার
message-processor.properties ফাইলে নিম্নলিখিত প্রপার্টি সেট করুন:
conf_http_HTTPClient.use.proxy=false
তারপরে, আপনি যে TargetEndpoint-এর মাধ্যমে
HTTP ফরওয়ার্ড প্রক্সি করতে চান সেটির জন্য use.proxy-কে "true" হিসেবে সেট করুন:
<Property name="use.proxy">true</Property>
ডিফল্ট হিসেবে, Edge প্রক্সিতে ট্রাফিকের জন্য টানেলিং ব্যবহার করে। ডিফল্ট হিসেবে টানেলিং বন্ধ করতে,
message-processor.properties ফাইলে নিম্নলিখিত প্রপার্টি সেট করুন:
conf_http_HTTPClient.use.tunneling=false
আপনি যদি কোনও নির্দিষ্ট টার্গেটের জন্য টানেলিং বন্ধ করতে চান, তাহলে TargetEndpoint-এ
use.proxy.tunneling প্রপার্টি সেট করুন। টার্গেট TLS/SSL ব্যবহার করলে,
এই প্রপার্টি উপেক্ষা করা হয় এবং মেসেজ সবসময় টানেলের মাধ্যমে পাঠানো হয়:
<Property name="use.proxy.tunneling">false</Property>
Edge-কে ফরওয়ার্ড প্রক্সি হিসেবে কাজ করতে হলে - ব্যাকএন্ড পরিষেবা থেকে অনুরোধ গ্রহণ করা এবং এন্টারপ্রাইজের বাইরে ইন্টারনেটে সেগুলিকে রাউট করা - প্রথমে Edge-এ একটি API প্রক্সি সেট-আপ করুন। ব্যাকএন্ড পরিষেবা তারপরে API প্রক্সি সার্ভারে অনুরোধ পাঠাতে পারে, যা তারপরে এক্সটার্নাল পরিষেবার সাথে কানেক্ট করতে পারে।