Konfigurowanie hosta wirtualnego

Host wirtualny na Edge określa domeny i porty routera Edge, na których jest dostępny serwer proxy interfejsu API, a także URL, którego aplikacje używają, aby uzyskać dostęp do serwera proxy interfejsu API. Host wirtualny określa też, czy dostęp do serwera proxy interfejsu API jest możliwy przez protokół HTTP czy zaszyfrowany protokół HTTPS.

W ramach procesu wdrażania Edge musisz utworzyć organizację, środowisko i hosta wirtualnego. Edge udostępnia polecenie setup-org, które ułatwia ten proces nowym użytkownikom.

Podczas tworzenia hosta wirtualnego musisz podać te informacje:

  • Nazwa hosta wirtualnego, którego używasz, aby się do niego odwoływać w serwerach proxy interfejsu API.
  • Port routera dla hosta wirtualnego. Zwykle te porty zaczynają się od 9001 i zwiększają się o 1 dla każdego nowego hosta wirtualnego.
  • Alias hosta hosta wirtualnego. Zwykle jest to nazwa DNS hosta wirtualnego.

Na przykład w pliku konfiguracyjnym przekazanym do polecenia setup-org możesz podać te informacje jako:

# 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

Podczas określania serwera proxy interfejsu API, który obsługuje żądanie, router Edge porównuje nagłówek Host przychodzącego żądania z listą dostępnych aliasów hostów. Wysyłając żądanie do hosta wirtualnego, podaj nazwę domeny pasującą do aliasu hosta wirtualnego lub adres IP routera i nagłówek Host zawierający alias hosta.

Jeśli na przykład utworzysz hosta wirtualny z aliasem myapis.apigee.net na porcie 9001, żądanie cURL do interfejsu API poprzez ten host wirtualny może wyglądać tak:

  • Jeśli masz wpis DNS dla domeny myapis.apigee.net:
    curl http://myapis.apigee.net:9001/proxy-base-path/resource-path
  • Jeśli nie masz wpisu DNS dla domeny myapis.apigee.net:
    curl http://routerIP:9001/proxy-base-path/resource-path -H 'Host: myapis.apigee.net'

    W tym formularzu podajesz adres IP routera i przekazujesz alias hosta w nagłówku Host.

Opcje dostępne, gdy nie ma wpisu DNS dla hosta wirtualnego

Jeśli nie masz wpisu DNS, możesz ustawić alias hosta na adres IP routera i port hosta wirtualnego (routerIP:port). Na przykład:

VHOST_ALIAS=192.168.1.31:9001

Następnie utwórz polecenie curl w formularzu poniżej:

curl http://routerIP:9001/proxy-base-path/resource-path

Ta opcja jest preferowana, ponieważ dobrze działa z interfejsem Edge.

Jeśli masz wiele routerów, dodaj alias hosta dla każdego routera, który określa adres IP każdego routera i port hosta wirtualnego:

# 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"

Alias hosta możesz też ustawić na wartość taką jak temp.hostalias.com. Następnie w każdym żądaniu musisz przekazywać nagłówek Host:

curl -v http://routerIP:9001/proxy-base-path/resource-path -H 'host: temp.hostalias.com'

Możesz też dodać alias hosta do pliku /etc/hosts. Na przykład dodaj ten wiersz do /etc/hosts:

192.168.1.31   temp.hostalias.com

Następnie możesz wysłać żądanie tak, jakby był wpis DNS:

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