Edge の仮想ホストでは、API プロキシが 公開されるドメインと Edge Router のポートが定義されます。さらに、拡張機能により、アプリが API プロキシへのアクセスに使用する URL も定義されます。また、仮想ホストでは、API プロキシに HTTP プロトコルを使用してアクセスするか、暗号化された HTTPS プロトコルを使用してアクセスするかも定義されます。
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 ヘッダーを、使用可能なホスト エイリアスのリストと比較します。仮想ホストを介してリクエストを行う場合は、仮想ホストのホスト エイリアスと一致するドメイン名
を指定するか、Router の IP アドレスと
ホスト エイリアスを含む Host ヘッダーを指定します。
たとえば、ポート 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 つは、ホスト エイリアスを routerIP:port の形式で Router の IP アドレスと仮想ホストのポートに設定することです。例:
VHOST_ALIAS=192.168.1.31:9001
次に、次の形式で curl コマンドを作成します。
curl http://routerIP:9001/proxy-base-path/resource-path
このオプションは、新しい Edge UI で適切に機能するため、推奨されます。
複数の Router がある場合は、各 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