میزبان مجازی در Edge دامنهها و درگاههای Edge Router را که یک پراکسی API در آنها نمایان میشود، و بهتبع آن نشانی وب را که برنامهها برای دسترسی به پراکسی API استفاده میکنند تعریف میکند. میزبان مجازی همچنین تعریف میکند که آیا ازطریق پروتکل HTTP یا ازطریق پروتکل رمزگذاریشده HTTPS به پراکسی API دسترسی پیدا شود.
بهعنوان بخشی از فرایند آمادهسازی Edge، باید سازمان، محیط، و میزبان مجازی ایجاد کنید. Edge فرمان setup-org را ارائه میدهد تا این فرایند را برای کاربران جدید آسانتر کند.
وقتی میزبان مجازی ایجاد میکنید، باید اطلاعات زیر را مشخص کنید:
- نام میزبان مجازی که برای ارجاع دادن به آن در پراکسیهای API خود استفاده میکنید.
- درگاه در «رهیاب» برای میزبان مجازی. معمولاً این درگاهها از ۹۰۰۱ شروع میشوند و برای هر میزبان مجازی جدید، یک واحد افزایش مییابند.
- نام مستعار میزبان میزبان مجازی. معمولاً نام ساناد میزبان مجازی.
برای مثال، در فایل پیکربندی که به فرمان setup-org ارسال میشود، میتوانید
این اطلاعات را بهصورت زیر مشخص کنید:
# Specify virtual host information VHOST_PORT=9001 VHOST_NAME=default # If you have a DNS entry for the virtual host VHOST_ALIAS=myapis.apigee.net
«مسیریاب لبه» سرصفحه Host درخواست ورودی را با فهرست نامهای مستعار میزبان دردسترس مقایسه میکند تا پراکسی میانای برنامهسازی کاربردی را که درخواست را مدیریت میکند تعیین کند. هنگام درخواست ازطریق میزبان مجازی، یا نام دامنهای را مشخص کنید که با نام مستعار میزبان میزبان مجازی مطابقت داشته باشد، یا نشانی IP «مسیریاب» و سرایند Host حاوی نام مستعار میزبان را مشخص کنید.
برای مثال، اگر میزبان مجازیای با نام مستعار میزبان myapis.apigee.net در درگاه ۹۰۰۱ ایجاد کردهاید، درخواست cURL به API ازطریق آن میزبان مجازی میتواند از یکی از شکلهای زیر استفاده کند:
- اگر ورودی ساناد برای myapis.apigee.net دارید:
curl http://myapis.apigee.net:9001/proxy-base-path/resource-path
- اگر ورودی ساناد برای myapis.apigee.net ندارید:
curl http://routerIP:9001/proxy-base-path/resource-path -H 'Host: myapis.apigee.net'
در این فرم، نشانی IP «مسیریاب» را مشخص میکنید و نام مستعار میزبان را در سرصفحه
Hostارسال میکنید.
گزینهها وقتی ورودی ساناد برای میزبان مجازی ندارید
یکی از گزینهها درصورتیکه ورودی ساناد نداشته باشید این است که نام مستعار میزبان را روی نشانی IP «مسیریاب» و درگاه میزبان مجازی، بهصورت routerIP:port تنظیم کنید. برای مثال:
VHOST_ALIAS=192.168.1.31:9001
سپس در فرم زیر فرمان curl را ایجاد میکنید:
curl http://routerIP:9001/proxy-base-path/resource-path
این گزینه ترجیح داده میشود زیرا با «میانای کاربری Edge» بهخوبی کار میکند.
اگر چند «رهیاب» دارید، برای هر «رهیاب» یک نام مستعار میزبان اضافه کنید و نشانی IP هر «رهیاب» و درگاه میزبان مجازی را مشخص کنید:
# Specify the IP and port of each router as a space-separated list enclosed in quotes: # VHOST_ALIAS="192.168.1.31:9001 192.168.1.32:9001"
یا میتوانید نام مستعار میزبان را روی مقداری مثل temp.hostalias.com تنظیم کنید.
سپس، باید سرایند Host را در هر درخواست بگذرانید:
curl -v http://routerIP:9001/proxy-base-path/resource-path -H 'host: temp.hostalias.com'
یا نام مستعار میزبان را به فایل /etc/hosts اضافه کنید. برای مثال، این خط را به /etc/hosts اضافه کنید:
192.168.1.31 temp.hostalias.com
سپس میتوانید درخواستی ارائه دهید که انگار ورودی ساناد دارید:
curl -v http://myapis.apigee.net:9001/proxy-base-path/resource-path