Edge for Private Cloud v4.18.05
โฮสต์เสมือนใน Edge จะกำหนดโดเมนและพอร์ต Edge Router ที่แสดงพร็อกซี API และ URL ที่แอปใช้เพื่อเข้าถึงพร็อกซี API ตามส่วนขยาย นอกจากนี้ โฮสต์เสมือนยังกำหนดว่าจะเข้าถึงพร็อกซี API โดยใช้โปรโตคอล HTTP หรือโปรโตคอล HTTPS ที่เข้ารหัส
ในกระบวนการเริ่มต้นใช้งาน Edge คุณต้องสร้างองค์กร สภาพแวดล้อม และโฮสต์เสมือน Edge มีคำสั่ง setup-org เพื่อให้กระบวนการนี้ง่ายขึ้นสำหรับผู้ใช้ใหม่
เมื่อสร้างโฮสต์เสมือน คุณต้องระบุข้อมูลต่อไปนี้
- ชื่อของโฮสต์เสมือนที่คุณใช้อ้างอิงในพร็อกซี 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 Router จะเปรียบเทียบส่วนหัว Host ของคำขอขาเข้ากับรายการชื่อแทนโฮสต์ที่ใช้ได้ โดยเป็นส่วนหนึ่งของการกำหนดพร็อกซี 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 UI ได้ดี
หากคุณมีเราเตอร์หลายตัว ให้เพิ่มชื่อแทนโฮสต์สำหรับเราเตอร์แต่ละตัว โดยระบุที่อยู่ 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