Virtuelle Hosts

<ph type="x-smartling-placeholder"></ph> Sie sehen die Dokumentation zu Apigee Edge.
Gehen Sie zur Apigee X-Dokumentation.
Weitere Informationen

In Edge verarbeitet ein Router den gesamten eingehenden API-Traffic. Das bedeutet, dass alle HTTP- und Anfragen an einen API-Proxy werden zuerst von einem Edge Router verarbeitet.

Mit einem virtuellen Host können Sie mehrere Domainnamen auf einem Server hosten. Bei Edge entspricht der Server einem Edge Router. Durch die Definition mehrerer virtueller Hosts auf einem Router kann der Router API-Anfragen an mehrere Domainnamen verarbeiten.

Ein virtueller Host in Edge definiert das Zugriffsprotokoll (HTTP oder HTTPS), einen offenen Routerport und einen Host Alias. Der Host-Alias ist in der Regel der DNS-Domainname, der der IP-Adresse des Routers zugeordnet ist.

Die folgende Abbildung zeigt beispielsweise einen Router mit zwei virtuellen Hostdefinitionen:

Der erste virtuelle Host verarbeitet HTTPS-Anfragen im Domain domainName1. Die zweite verarbeitet HTTP-Anfragen an domainName2.

Bei einer Anfrage an einen API-Proxy vergleicht der Router den Host-Header der eingehenden Anfrage mit dem Liste der Host-Aliasse, die von allen virtuellen Hosts definiert werden, um zu bestimmen, Host die Anfrage verarbeitet.

Definitionen für virtuelle Hosts

Virtuelle Hosts enthalten die folgenden Informationen:

  • Der interne Name des virtuellen Hosts. Mit diesem Namen verweisen Sie auf die virtuelle in Ihren API-Proxys und bei der Konfiguration des virtuellen Hosts.
  • Der Host-Alias des virtuellen Hosts. In der Regel ist der Host-Alias Domainnamen, der der IP-Adresse auf dem Router zugeordnet ist. Der Host-Header einer API-Proxy-Anfragen müssen den Host-Alias des virtuellen Hosts enthalten.
  • Einen offenen Port am Router.
  • Gibt an, ob TLS (HTTPS-Zugriff) aktiviert ist oder nicht (HTTP-Zugriff).

So geben Sie beispielsweise die folgenden Informationen an, wenn Sie einen virtuellen Host erstellen:

  • name = myvhost
  • Host-Alias = apis.acme.com
  • Port = 443
  • TLS ist aktiviert

Je nach der obigen Einstellung für den virtuellen Host verwendet eine Anfrage an einen API-Proxy das Formular:

https://apis.acme.com/{proxy-base-path}/{resource-path}

Dabei gilt:

  • {proxy-base-path} wird beim Erstellen eines API-Proxys definiert und ist für jeden API-Proxy eindeutig. Beispiel:
    https://apis.acme.com/characters
  • {resource-path} ist der Pfad zu einer Ressource, auf die über den API-Proxy zugegriffen werden kann. Beispiel:
    https://apis.acme.com/characters/coyote
    https://apis.acme.com/characters/roadrunner

Informationen zu virtuellen Hosts in Edge für die Cloud

Jede Edge-Organisation enthält automatisch zwei Umgebungen (test und prod), zwei virtuelle Hosts in jeder Umgebung (Standard und sicher), und DNS-Einträge für jeden Host-Alias.

Der Host-Alias jedes von Apigee bereitgestellten virtuellen Hosts enthält den Namen der Organisation und Umgebung, wie in der folgenden Tabelle gezeigt:

Umgebung Name des virtuellen Hosts Host-Alias Port TLS aktiviert
prod Standard {org-name}-prod.apigee.net 80 Nein
sicher {org-name}-prod.apigee.net 443 Ja
Test Standard {org-name}-test.apigee.net 80 Nein
sicher {org-name}-test.apigee.net 443 Ja

Beispiel: Der Standard-Domainname einer Organisation namens „myorg“ in der prod-Umgebung ist „myorg-prod.apigee.net“. Um auf einen API-Proxy in dieser Organisation zuzugreifen, verwenden Sie daher eine URL im folgenden Format:

http://myorg-prod.apigee.net/{proxy-base-path}/{resource-path}
https://myorg-prod.apigee.net/{proxy-base-path}/{resource-path}

Kostenpflichtige Apigee-Pläne:Ein Domainname, der „apigee.net“ enthält nicht das ist, was Sie Ihrer Zielgruppe Kunden zu gewinnen. Sie können einen DNS-Eintrag und einen CNAME-Eintrag verwenden, um Ihre Organisation auf Edge-Geräten nutzen. Sie müssen auch einen virtuellen Host erstellen, bei dem der Host-Alias auf diesen Wert festgelegt ist. Domain-Namen eingeben. So können Entwickler über eine für Ihr Unternehmen spezifische Domain auf Ihre API zugreifen.

Hier ist ein Beispiel für eine benutzerdefinierte Domain in Edge:

https://apis.acme.com/{proxy-base-path}/{resource-path}

Informationen zu virtuellen Hosts on Edge für Private Cloud

Wenn Sie Apigee Edge für Private Cloud installieren, gibt es keine Standardorganisationen. Umgebungen oder virtuelle Hosts, die für Sie erstellt wurden. Nachdem Sie die Edge-Installation abgeschlossen haben, besteht Ihre erste Aktion normalerweise darin, eine Organisation, Umgebung und einen virtuellen Host über das „Onboarding“ .

Führen Sie den folgenden Befehl auf dem Knoten des Edge-Verwaltungsservers aus, um ein Onboarding durchzuführen:

/opt/apigee/apigee-service/bin/apigee-service apigee-provision setup-org -f configFile

Dabei enthält configFile die Informationen, die zum Erstellen eines Nutzer, Organisation, Umgebung und virtueller Host.

Sie erstellen zum Beispiel:

  • Einen Nutzer Ihrer Wahl, der als Organisationsadministrator fungiert
  • Eine Organisation namens example
  • Eine Umgebung in der Organisation namens prod
  • Ein virtueller Host in der Umgebung mit dem Namen default, der HTTP-Zugriff auf den Port zulässt 9001
  • Ein Host-Alias des DNS-Namens, mit dem auf den Router zugegriffen wird, oder die IP-Adresse des Routers und des virtuellen Hosts im Format IP:9001.

Sie können später beliebig viele Organisationen, Umgebungen und virtuelle Hosts zu Ihrem lokale Version von Edge. Weitere Informationen finden Sie unter:

Virtuelle Hosts werden auf dem Edge Router geöffnet. Daher müssen Sie sicherstellen, dass der Port den Sie für den virtuellen Host auf dem Router angegeben haben. Sie können einen Befehl im folgenden Format verwenden um einen Port zu öffnen:

iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 9001 -j ACCEPT --verbose

Nachdem Sie diesen Befehl ausgeführt haben, können Sie mithilfe einer URL im folgenden Format auf Ihre APIs zugreifen:

http://<router-ip>:9001/{proxy-base-path}/{resource-path}

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://myAPI.myCo.com/{proxy-base-path}/{resource-path}

Wenn Sie den DNS-Eintrag definieren, müssen Sie auch einen virtuellen Host mit einem Host-Alias erstellen, mit dem Domainnamen des DNS-Eintrags übereinstimmt. Im obigen Beispiel würden Sie einen Host-Alias angeben. myAPI.myCo.com fest, wenn Sie den virtuellen Host erstellen.

Host-Aliasse und DNS-Namen

Eine Eigenschaft, die Sie für einen virtuellen Host festlegen, ist der Host-Alias. Der Host-Alias ist in der Regel der DNS-Name des virtuellen Hosts. Die Festlegung des Host-Alias hängt von der Art der Edge-Installation: Cloud oder Private Cloud.

Host-Aliasse und DNS-Namen in Edge für die Cloud

Wenn Sie in Edge für die Cloud zum ersten Mal eine Edge-Organisation erstellen, wird Apigee automatisch erstellt zwei Umgebungen (test und prod), zwei virtuelle Hosts in jede Umgebung (Standard und sicher) sowie die DNS-Einträge für jede Umgebung virtueller Host.

Der Host-Alias der virtuellen Hosts enthält den Namen der Organisation und der Umgebung. Daher hat eine Anfrage über einen virtuellen Host das folgende Format:

  • http://{org-name}-prod.apigee.net/{proxy-base-path}/{resource-path}
  • https://{org-name}-prod.apigee.net/{proxy-base-path}/{resource-path}
  • http://{org-name}-test.apigee.net/{proxy-base-path}/{resource-path}
  • https://{org-name}-test.apigee.net/{proxy-base-path}/{resource-path}

In der Regel erstellen Sie virtuelle Hosts, die Ihren Domainnamen verwenden, apigee.net-Standarddomain. Aufgabe Daher müssen Sie zuerst einen eigenen DNS-Eintrag und einen eigenen CNAME-Eintrag erstellen.

Die folgende Abbildung zeigt eine typische Konfiguration dafür, wie Edge eine API-Anfrage verarbeitet:

In diesem Fall gilt Folgendes:

  • api.acme.com ist der gewünschte Domainname.
  • Sie definieren einen DNS-Eintrag und einen CNAME-Eintrag, um api.acme.com auf acme-prod.apigee.net.
  • Die Anfrage enthält den Host-Header, den der Router verwendet, um den virtuellen Host ermitteln, der die Anfrage verarbeitet.

In diesem Beispiel geben Sie die folgenden Informationen in einer virtuellen Hostdefinition an:

  • name = myvhost
  • Host-Alias = apis.acme.com
  • Port = 443
  • TLS-Zugriff aktivieren

Weitere Informationen finden Sie unter Virtuelle Hosts für die Cloud konfigurieren.

Hostaliasse und DNS-Namen in Edge für Private Cloud

Wie bei Edge für die Cloud erstellen Sie virtuelle Hosts, die Ihren eigenen Domainnamen für den Host verwenden Alias. Anschließend erstellen Sie Ihren eigenen DNS-Eintrag und einen eigenen CNAME-Eintrag, um auf diese virtuellen Hosts zuzugreifen.

Einer der Unterschiede zwischen Cloud und Private Cloud besteht darin, dass in der Cloud Apigee automatisch erstellten DNS-Namen für Ihre Organisationen im folgenden Format:

  • name=Standard: http://{org-name}-{env-name}.apigee.net (Router-Port 80)
  • name=secure: https://{org-name}-{env-name}.apigee.net. (Router-Port 443)

In Edge für die Private Cloud müssen Sie die DNS-Einträge zur IP-Adresse und zum Port erstellen Ihres Routers.

Sie geben diese Informationen beispielsweise in einer virtuellen Hostdefinition an:

  • name = myvhost
  • Host-Alias = apis.acme.com
  • Port = 9001
  • TLS-Zugriff aktivieren

Die folgende Abbildung zeigt eine typische Konfiguration dafür, wie Edge eine API-Anfrage verarbeitet:

In diesem Fall gilt Folgendes:

  • api.acme.com ist der gewünschte Domainname.
  • Sie definieren einen DNS-Eintrag und einen CNAME-Eintrag, um api.acme.com auf die IP-Adresse zu verweisen. Adresse und Port des Routers.
  • Die Anfrage enthält den Host-Header, den der Router verwendet, um den virtuellen Host ermitteln, der die Anfrage verarbeitet.

Weitere Informationen finden Sie unter Virtuelle Hosts für die Private Cloud konfigurieren.

Hostaliasse und Platzhalter

Sie können das Zeichen „*“ Platzhalterzeichen im Hostalias. Das „*“ kann ein Platzhalterzeichen dürfen nur am Anfang (vor dem ersten „.“) des Host-Alias stehen und dürfen nicht mit anderen Zeichen.

Im Folgenden finden Sie ein Beispiel für einen gültigen Host-Alias mit einem Platzhalter:

*.example.com

Die folgenden Beispiele sind ungültig:

  www.*.example.com
  w*.example.com

Mit einem Platzhalter in einem virtuellen Host-Alias API-Proxys verarbeiten Aufrufe, die an mehrere Sub-Domains wie alpha.example.com, beta.example.com oder live.example.com Mit einem Platzhalter-Alias können Sie außerdem weniger virtuelle Hosts pro Umgebung, um im Produkt , da ein virtueller Host mit einem Platzhalter nur als ein virtueller Host zählt.

Das TLS-Zertifikat für den virtuellen Host muss einen übereinstimmenden Platzhalter im CN-Namen des Zertifikats haben. Beispiel: *.example.com.

Eigenschaften virtueller Hosts

In Edge wird ein virtueller Host durch ein XML-Objekt dargestellt. Beispiel: Der Parameter folgendes XML-Objekt definiert einen virtuellen Host:

<VirtualHost name="vhostName">
    <HostAliases>
        <HostAlias>hostAlias</HostAlias>
    </HostAliases>
    <Interfaces>
        <!-- Private Cloud only -->
        <Interface>interfaceName</Interface>
    <Port>portNumber</Port>
    <BaseURL>http://myCo.com<</BaseUrl>
    <OCSPStapling>off</OCSPStapling>
    <RetryOptions/>
   <SSLInfo>
        <Enabled>trueFalse</Enabled>
        <ClientAuthEnabled>trueFalse</ClientAuthEnabled>
        <KeyStore>ref://keystoreRef</KeyStore>
        <KeyAlias>keyAlias</KeyAlias>
        <TrustStore>ref://truststoreRef</TrustStore>
        <IgnoreValidationErrors>trueFalse</IgnoreValidationErrors>
    </SSLInfo>
    <Properties>
        <Property name="proxy_read_timeout">timeout</Property>
        <Property name="keepalive_timeout">timeout</Property>
        <Property name="proxy_request_buffering">onOff</Property>
        <Property name="proxy_buffering">onOff</Property>
        <Property name="ssl_protocols">protocolList</Property>
        <Property name="ssl_ciphers">cipherList</Property>
    </Properties>
</VirtualHost>

Die Liste der Eigenschaften, die Sie festlegen können, hängt davon ab, ob Sie Edge für die Cloud verwenden oder Edge für die private Cloud. Wenn Sie Edge für die Private Cloud verwenden, enthält die Liste der verfügbaren Eigenschaften auch von Ihrer Edge-Version abhängig sind. Eine vollständige Beschreibung aller Eigenschaften eines virtuellen Hosts finden Sie unter Referenz zu virtuellen Host-Attributen

Weitere Informationen zum Erstellen virtueller Hosts für Ihre spezifische Version von Edge finden Sie unter: