Edge for Private Cloud v4.18.05
Edge 上の仮想ホストでは、API プロキシが公開されているドメインと Edge Router のポートが定義されています。さらに、拡張機能により、アプリが API プロキシへのアクセスに使用する URL が定義されています。また、仮想ホストでは、HTTP プロトコルと暗号化された HTTPS プロトコルのどちらを使用して API プロキシにアクセスされるかが定義されます。
Edge のオンボーディング プロセスの一部として、組織、環境、および仮想ホストを作成する必要があります。Edge では setup-org
コマンドを使用することで、新規ユーザーにとってこのプロセスが簡単になります。
仮想ホストを作成するときは、以下の情報を指定する必要があります。
- API プロキシで参照するために使用する仮想ホストの名前。
- 仮想ホストの Router 上のポート。通常、これらのポートは 9001 から始まり、新しい仮想ホストごとに 1 ずつ増加します。
- 仮想ホストのエイリアス。通常は、仮想ホストの DNS 名です。
たとえば、setup-org
コマンドに渡される構成ファイルでは、この情報を次のように指定できます。
# 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
Edge Router は、リクエストを処理する API プロキシの決定の中で、新着リクエストの Host
ヘッダーと使用可能なホスト エイリアスのリストを比較します。仮想ホストを介してリクエストを行うときは、仮想ホストのエイリアスと一致するドメイン名を指定するか、ホスト エイリアスを含む Host
ヘッダーと Router の IP アドレスを指定します。
たとえば、ポート 9001 に myapis.apigee.net のエイリアスを持つ仮想ホストを作成した場合、その仮想ホストを介した API への cURL リクエストは、次のいずれかの形式を使用できます。
- myapis.apigee.net の DNS エントリがある場合
curl http://myapis.apigee.net:9001/proxy-base-path/resource-path
- myapis.apigee.net の DNS エントリがない場合
curl http://routerIP:9001/proxy-base-path/resource-path -H 'Host: myapis.apigee.net'
この形式では、Router の IP アドレスを指定し、ホスト エイリアスを
Host
ヘッダーに含めます。
仮想ホストの DNS エントリがない場合のオプション
DNS エントリがない場合の 1 つのオプションとして、ホスト エイリアスを Router の IP アドレスと仮想ホストのポートに、routerIP:port として設定します。次に例を示します。
VHOST_ALIAS=192.168.1.31:9001
次に、以下の形式で curl コマンドを作成します。
curl http://routerIP:9001/proxy-base-path/resource-path
このオプションは Edge UI に適合するため、優先的に用います。
複数の Router がある場合は、各 Router に IP アドレスと仮想ホストのポートを指定してホスト エイリアスを追加します。
# 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"
または、ホスト エイリアスを temp.hostalias.com
などの値に設定することもできます。次に、それぞれのリクエストで Host
ヘッダーを渡す必要があります。
curl -v http://routerIP:9001/proxy-base-path/resource-path -H 'host: temp.hostalias.com'
または、ホスト エイリアスを /etc/hosts
ファイルに追加します。たとえば、次の行を /etc/hosts
に追加します。
192.168.1.31 temp.hostalias.com
すると DNS エントリがあるかのようにリクエストできます。
curl -v http://myapis.apigee.net:9001/proxy-base-path/resource-path