Virtuellen Host einrichten

Edge for Private Cloud v4.18.05

Ein virtueller Host auf Edge definiert die Domains und Edge-Router-Ports, über die ein API-Proxy verfügbar gemacht wird, und danach die URL, die Anwendungen zum Zugriff auf einen API-Proxy verwenden. 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-Onboardings müssen Sie eine Organisation, eine Umgebung und einen virtuellen Host erstellen. Edge stellt den Befehl setup-org bereit, um neuen Nutzenden diesen Vorgang erleichtern.

Beim Erstellen des virtuellen Hosts müssen Sie die folgenden Informationen angeben:

  • Der Name des virtuellen Hosts, auf den Sie in Ihren API-Proxys verweisen.
  • 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.
  • Der 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, können Sie diese Informationen beispielsweise so 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 Hostalias eines virtuellen Hosts übereinstimmt, oder die IP-Adresse des Routers und den Host-Header mit dem Hostalias.

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 Hostalias im Host-Header.

Optionen, wenn Sie keinen DNS-Eintrag für den virtuellen Host haben

Wenn Sie keinen DNS-Eintrag haben, können Sie den Hostalias auf die IP-Adresse des Routers und den Port des virtuellen Hosts festlegen, z. B. routerIP:port. Beispiel:

VHOST_ALIAS=192.168.1.31:9001

Dann geben Sie einen curl-Befehl in der folgenden Form ein:

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 wie temp.hostalias.com festlegen. Anschließend müssen Sie den Host-Header bei jeder Anfrage übergeben:

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

Alternativ können Sie den Hostalias zu Ihrer /etc/hosts-Datei hinzufügen. Fügen Sie /etc/hosts beispielsweise diese Zeile hinzu:

192.168.1.31   temp.hostalias.com

Anschließend können Sie eine Anfrage stellen, als hätten Sie einen DNS-Eintrag:

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