הגדרת מארח וירטואלי

מארח וירטואלי ב-Edge מגדיר את הדומיינים ואת יציאות Edge Router שבהן חשוף שרת proxy של API. לחלופין, את כתובת ה-URL שבה אפליקציות משתמשות כדי לגשת לשרת proxy של API. מארח וירטואלי גם מגדיר אם הגישה לשרת ה-proxy של ה-API מתבצעת באמצעות פרוטוקול HTTP, או באמצעות פרוטוקול HTTPS מוצפן.

במסגרת תהליך ההצטרפות ל-Edge, צריך ליצור ארגון, סביבה ומארח וירטואלי. כדי להקל על משתמשים חדשים את התהליך, Edge מספקת את הפקודה setup-org.

כשיוצרים את המארח הווירטואלי, צריך לציין את הפרטים הבאים:

  • שם המארח הווירטואלי שבו משתמשים כדי להפנות אליו בשרתי ה-proxy של ה-API.
  • היציאה בנתב של המארח הווירטואלי. בדרך כלל היציאות האלה מתחילות ב-9001 ומצטברות ב-1 לכל מארח וירטואלי חדש.
  • כינוי המארח של המארח הווירטואלי. בדרך כלל זהו שם ה-DNS של המארח הווירטואלי.

לדוגמה, בקובץ תצורה שמועבר לפקודה 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

נתב Edge משווה את הכותרת Host של הבקשה הנכנסת לרשימת כינויי המארח הזמינים כחלק מקביעת שרת ה-API של שרת ה-API שמטפל בבקשה. כששולחים בקשה דרך מארח וירטואלי, צריך לציין שם דומיין שתואם לכינוי המארח של מארח וירטואלי, או לציין את כתובת ה-IP של הנתב ואת הכותרת Host שמכילה את כינוי המארח.

לדוגמה, אם יצרתם מארח וירטואלי עם כינוי מארח של myapis.apigee.net ביציאה 9001, בקשת cURL ל-API דרך אותו מארח וירטואלי יכולה להשתמש באחד מהטפסים הבאים:

  • אם יש לכם רשומת DNS של myapis.apigee.net:
    curl http://myapis.apigee.net:9001/proxy-base-path/resource-path
  • אם אין לכם רשומת DNS עבור myapis.apigee.net:
    curl http://routerIP:9001/proxy-base-path/resource-path -H 'Host: myapis.apigee.net'

    בטופס הזה מציינים את כתובת ה-IP של הנתב ומעבירים את כינוי המארח בכותרת Host.

אפשרויות כשאין רשומת DNS עבור המארח הווירטואלי

אם אין רשומת DNS, אפשרות אחת היא להגדיר את כינוי המארח לכתובת ה-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

לאחר מכן אפשר לשלוח בקשה כאילו הייתה רשומת DNS:

curl -v http://myapis.apigee.net:9001/proxy-base-path/resource-path