Edge for Private Cloud v4.18.01
Ein virtueller Host in Edge definiert die Domains und Edge Router-Ports, an denen ein API-Proxy ausgeführt wird , und somit auch die URL, über die Apps auf einen API-Proxy zugreifen. Ein virtueller Host definiert, ob auf den API-Proxy über das HTTP-Protokoll oder das verschlüsselte HTTPS zugegriffen wird Protokoll.
Im Rahmen des Edge-Onboardingprozesses müssen Sie eine Organisation, Umgebung und virtueller Host. Mit dem Befehl setup-org neuen Nutzenden diesen Vorgang erleichtern.
Beim Erstellen des virtuellen Hosts müssen Sie die folgenden Informationen angeben:
- Der Name des virtuellen Hosts, den Sie verwenden, um in Ihrer API darauf zu verweisen Proxys.
- Der Port auf dem Router für den virtuellen Host. In der Regel werden diese Ports bei 9001 beginnen und für jeden neuen virtuellen Host um eins erhöhen.
- Host-Alias des virtuellen Hosts. In der Regel ist der DNS-Name des virtueller Host.
In einer Konfigurationsdatei, die an den Befehl setup-org übergeben wird, haben Sie beispielsweise können diese Informationen folgendermaßen angeben:
# 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
Der Edge Router vergleicht den Host-Header des eine eingehende Anfrage an die Liste der verfügbaren Host-Aliase an, damit der API-Proxy ermittelt wird, die Anfrage verarbeitet. Wenn Sie eine Anfrage über einen virtuellen Host senden, geben Sie entweder einen Domainnamen an der mit dem Host-Alias eines virtuellen Hosts übereinstimmt, oder geben Sie die IP-Adresse des Routers und den Host-Header, der Host-Alias.
Wenn Sie beispielsweise einen virtuellen Host mit dem Host-Alias myapis.apigee.net auf Port erstellt haben 9001 hat, kann eine cURL-Anfrage an eine API über diesen virtuellen Host Folgendes verwenden: Formulare:
- Wenn Sie einen DNS-Eintrag für myapis.apigee.net haben:
curl http://myapis.apigee.net:9001/{proxy-base-path}/{resource-path} - Wenn Sie keinen DNS-Eintrag für myapis.apigee.net haben:
curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} -H „Host: myapis.apigee.net“
In diesem Formular geben Sie die IP-Adresse des Routers an und übergeben den Host-Alias in der Host-Header.
Hinweis: Der cURL-Befehl, die meisten Browser und viele andere Dienstprogramme werden automatisch fügen Sie den Header Host mit dem Domain als Teil der Anfrage. Sie können also einen cURL-Befehl im folgenden Format verwenden:
curl http://<routerIP>:9001/{proxy-base-path}/{resource-path}
Optionen, wenn Sie kein DNS haben Eintrag für den virtuellen Host
Wenn Sie keinen DNS-Eintrag haben, können Sie den Host-Alias auf die IP-Adresse des Router und Port des virtuellen Hosts als <routerIP>:port. Beispiel:
VHOST_ALIAS=192.168.1.31:9001
Dann erstellen Sie einen curl-Befehl im folgenden Format:
curl http://<routerIP>:9001/{proxy-base-path}/{resource-path}
Diese Option wird bevorzugt, da sie gut mit der Edge-Benutzeroberfläche funktioniert.
Wenn Sie mehrere Router haben, fügen Sie für jeden einen Host-Alias hinzu. Geben Sie dabei die IP-Adresse jeden Router und Port des virtuellen Hosts:
# 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"
Alternativ können Sie den Hostalias auf einen Wert festlegen, z. B. als temp.hostalias.com. Anschließend müssen Sie den Header Host auf jedem Anfrage:
curl -v http://<routerIP>:9001/{proxy-base-path}/{resource-path} ?-H 'host: temp.hostalias.com'
Alternativ können Sie den Host-Alias in die Datei /etc/hosts einfügen. Fügen Sie beispielsweise diese Zeile an /etc/hosts:
192.168.1.31 temp.hostalias.com
Dann können Sie eine Anfrage stellen, als ob Sie einen DNS-Eintrag hätten:
curl -v http://myapis.apigee.net:9001/{proxy-base-path}/{resource-path}