<ph type="x-smartling-placeholder"></ph>
Sie sehen die Dokumentation zu Apigee Edge.
Gehen Sie zur
Apigee X-Dokumentation. Weitere Informationen
Bei einer lokalen Installation haben Sie vollständige Kontrolle über virtuelle Hosts. Sie können virtuelle Hosts für beliebige Organisationen und Umgebungen mit oder ohne TLS.
In diesem Dokument wird beschrieben, wie Sie einen einfachen virtuellen Host erstellen. Das heißt, eine, die nicht TLS unterstützt. Weitere Beispiele, einschließlich Beispielen zum Erstellen virtueller Hosts, die TLS unterstützen, Siehe TLS konfigurieren API-Zugriff für die Private Cloud
Weitere Informationen:
- Informationen zu virtuellen Hosts
- Virtuelle Hosts konfigurieren
- TLS konfigurieren
- Schlüsselspeicher und Truststores
- TLS konfigurieren Zugriff auf eine API für die Private Cloud
Informationen zu Host-Aliassen
<ph type="x-smartling-placeholder">Beim Erstellen des virtuellen Hosts müssen Sie den Host-Alias des virtuellen Hosts angeben. In der Regel ist dies der DNS-Name des virtuellen Hosts.
Der Edge Router vergleicht den Host
-Header der eingehenden Anfrage mit dem
Liste der verfügbaren Host-Aliasse als Teil der Bestimmung des API-Proxys, der die Anfrage verarbeitet.
Wenn Sie eine Anfrage über einen virtuellen Host senden, geben Sie entweder einen Domainnamen an, der mit dem Host übereinstimmt
Alias eines virtuellen Hosts oder geben Sie die IP-Adresse des Routers und den Host
-Header an, der den Host-Alias enthält.
Wenn Sie beispielsweise einen virtuellen Host mit dem Host-Alias myapis.apigee.net an Port 9001, dann eine cURL-Anfrage an eine API über diesen virtuellen Host eine der folgenden Formen verwenden:
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.curl http://routerIP:9001/proxy-base-path/resource-path
Optionen Sie haben keinen DNS-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. Hier einige Beispiele:
192.168.1.31:9001
Wenn Sie einen curl
-Befehl im folgenden Format erstellen:
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.
Alternativ können Sie den Hostalias auf einen Wert festlegen, z. B.
temp.hostalias.com. 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 Host-Alias in die Datei /etc/hosts einfügen. Fügen Sie diese Zeile beispielsweise /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
Informationen zu virtuellen Host-Ports in Edge für Private Cloud 4.16.01 und höher
Beim Erstellen eines virtuellen Hosts geben Sie den vom virtuellen Host verwendeten Routerport an. Für Beispiel: Port 9001.
Bei Apigee for Private Cloud-Releases 4.16.01 und höher wird der Router standardmäßig als der Benutzer „Apigee“ die keinen Zugriff auf privilegierte Ports hat, in der Regel Port 1024 und niedriger. Wenn Sie einen virtuellen Host erstellen möchten, der den Router an einen geschützten Port bindet, konfigurieren Sie den Router so, dass er als Nutzer mit Zugriff auf diese Ports ausgeführt wird. Weitere Informationen finden Sie unter Virtuellen Host einrichten.
Virtuelle Hosts erstellen
In diesem Abschnitt wird beschrieben, wie Sie virtuelle Hosts für Apigee Edge for Private Cloud erstellen. Zum Erstellen einer neuen virtueller Host zu verwalten ist, müssen Sie Administrator der Organisation sein.
Sie können virtuelle Hosts für Apigee Edge für Private Cloud entweder mit der API oder der Edge-Benutzeroberfläche erstellen. Dies sind die in den folgenden Abschnitten beschrieben werden.
Virtuellen Host mit einem Browser erstellen
In diesem Abschnitt wird beschrieben, wie Sie einen virtuellen Host mithilfe eines Browsers erstellen (nur Edge-Benutzeroberfläche).
So erstellen Sie einen neuen virtuellen Host in der Edge-Benutzeroberfläche:
- Melden Sie sich bei der Edge-Verwaltungsbenutzeroberfläche an.
- Wählen Sie Verwaltung > Virtuelle Hosts
Wählen Sie die Umgebung aus der Drop-down-Liste aus.
Edge zeigt eine Liste der virtuellen Hosts für diese Umgebung an.
- Wählen Sie zum Erstellen eines neuen virtuellen Hosts + Virtual Host aus.
Edge zeigt das Formular Create Virtual Host (Virtuellen Host erstellen) an.
Sie können auch auf den Namen eines vorhandenen virtuellen Hosts klicken, um ihn zu bearbeiten.
- Definieren Sie Ihren neuen virtuellen Host. Das Feld Basis-URL muss den Parameter
Protokoll: Stellen Sie dem Feldwert „http://“ oder „https://“ voran.
Beachten Sie außerdem Folgendes:
- Sie können beliebig viele virtuelle Hosts erstellen
- TLS ist optional und kann Version 1.0, 1.1 oder 1.2 sein
- Der Port des virtuellen Hosts ist konfigurierbar
- Klicken Sie auf die Schaltfläche Erstellen, um den neuen virtuellen Host zu speichern.
Virtuellen Host mit der API erstellen
Um einen virtuellen Host mit der API zu erstellen, erstellen Sie ein XML-Objekt, das den virtueller Host. Beispielsweise definiert das folgende XML-Objekt einen virtuellen Host, der das HTTP- Protokoll:
<VirtualHost name="myVHost"> <HostAliases> <HostAlias>DNS_name_or_IP:port</HostAlias> </HostAliases> <Interfaces/> <Port>9005</Port> </VirtualHost>
Beachten Sie, dass der virtuelle Host das Attribut name
enthält. Sie verwenden den Wert der
name
, um einen API-Proxy für die Verwendung des virtuellen Hosts zu konfigurieren.
Sie können dann über diesen virtuellen Host auf einen API-Proxy zugreifen, indem Sie eine Anfrage an:
http://routerIP:port/proxy-base-path/resource-path
https://routerIP:port/proxy-base-path/resource-path
Wobei:
http
oderhttps
: Wenn der virtuelle Host so konfiguriert ist, TLS unterstützen, verwenden Sie HTTPS. Wenn der virtuelle Host TLS nicht unterstützt, verwenden Sie HTTP.- routerIP:port ist die IP-Adresse und Portnummer des virtuellen Hosts.
- proxy-base-path und resource-path werden beim Erstellen des API-Proxy.
Normalerweise veröffentlichen Sie Ihre APIs nicht für Kunden mit einer IP-Adresse und Portnummer. Stattdessen definieren Sie einen DNS-Eintrag für den Router und den Port. Beispiel:
http://api.myCompany.com/proxy-base-path/resource-path https://api.myCompany.com/proxy-base-path/resource-path
Wenn Sie den DNS-Eintrag definieren, müssen Sie einen Host-Alias für den virtuellen Host erstellen.
der mit dem Domainnamen des DNS-Eintrags übereinstimmt. Der Host-Alias muss mit dem String übereinstimmen, den
übergibt der Client im Host
-Header.
Im obigen Beispiel würden Sie den Hostalias api.myCompany.com
angeben.
<VirtualHost name="myVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Interfaces/> <Port>9005</Port> </VirtualHost>
So erstellen Sie einen virtuellen Host, der das HTTP-Protokoll verwendet:
- Erstellen Sie den virtuellen Host mithilfe der
Erstellen Sie
Virtual Host API, wobei ms-IP für
IP-Adresse oder Domainname des Verwaltungsserverknotens:
$ curl -X POST -H "Content-Type:application/xml" \ http://ms-IP:8080/v1/o/org_name/environments/env_name/virtualhosts \ -d '<VirtualHost name="newVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Interfaces/> <Port>9005</Port> </VirtualHost>' \ -u sysAdminEmail:password
- Erstellen Sie den DNS-Eintrag für den virtuellen Host, der mit dem Hostalias übereinstimmt.
- Wenn Sie bereits API-Proxys haben, fügen Sie den virtuellen Host zum
<HTTPConnection>
-Element hinzu im Proxy-Endpunkt. Der virtuelle Host wird allen neuen API-Proxys automatisch hinzugefügt. Weitere Informationen finden Sie unter . API-Proxy für die Verwendung eines virtuellen Hosts konfigurieren
Virtuellen Host ändern
So ändern Sie einen virtuellen Host:
-
Aktualisieren Sie den virtuellen Host mithilfe der <ph type="x-smartling-placeholder"></ph> Aktualisieren Sie eine Virtual Host API, wobei
<ms-IP>
die IP-Adresse ist oder Domainname des Verwaltungsserverknotens. Sie müssen die vollständige Definition der virtueller Host im Anfragetext, nicht nur die Elemente, die Sie ändern möchten. In dieser Sie können beispielsweise die Portnummer des virtuellen Hosts von 9008 in 9009 ändern:curl -X PUT -H "Content-Type:application/xml" \ http://ms-IP:8080/v1/o/org_name/environments/env_name/virtualhosts/vhost_name \ -d '<VirtualHost name="newVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Interfaces/> <Port>9009</Port> </VirtualHost>' \ -u email:password
-
Nur bei Edge for Private Cloud-Versionen 4.16.01 und 4.16.05: Wenn Sie
einen vorhandenen virtuellen Host und Sie aktivieren entweder TLS oder deaktivieren TLS, ohne den Port zu ändern
Zahl, dann:
<ph type="x-smartling-placeholder">
- </ph>
Halten Sie den Router an:
/opt/apigee/apigee-service/bin/apigee-service edge-router stop
Löschen Sie alle Dateien in
/opt/nginx/conf.d
:rm -f /opt/nginx/conf.d/*
Starten Sie den Router:
/opt/apigee/apigee-service/bin/apigee-service edge-router start
- Wiederholen Sie diese Schritte für alle Router.