Host virtual di Edge menentukan domain dan port Router Edge tempat proxy API berada terbuka, dan juga URL yang digunakan aplikasi untuk mengakses proxy API. {i>Host<i} virtual juga menentukan apakah proxy API diakses dengan menggunakan protokol HTTP, atau dengan HTTPS dan berperforma tinggi karena merupakan protokol biner.
Sebagai bagian dari proses orientasi Edge, Anda harus membuat organisasi, lingkungan, dan
{i>host<i} virtual. Edge menyediakan perintah setup-org
untuk membuat
proses ini lebih mudah
bagi pengguna baru.
Saat membuat host virtual, Anda harus menentukan informasi berikut:
- Nama host virtual yang Anda gunakan untuk mereferensikannya dalam API menggunakan {i>proxy<i}.
- Port di Router untuk host virtual. Biasanya porta ini dimulai dari 9001 dan bertambah satu untuk setiap {i>host<i} virtual baru.
- Alias host dari host virtual. Biasanya nama DNS dari {i>host<i} virtual.
Misalnya, dalam file konfigurasi yang diteruskan ke perintah setup-org
, Anda dapat menentukan
informasi ini sebagai:
# 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
Router Edge membandingkan header Host
dari
permintaan masuk ke daftar alias host yang tersedia sebagai bagian dari penentuan proxy API yang
yang akan menangani permintaan. Saat membuat permintaan melalui host virtual, tentukan nama domain
yang mencocokkan alias {i>host<i} dari {i>
host<i} virtual, atau menentukan alamat IP {i>Router<i} dan
header Host
yang berisi alias host.
Misalnya, jika Anda membuat host virtual dengan alias host myapis.apigee.net pada port 9001, lalu permintaan cURL ke API melalui host virtual tersebut dapat menggunakan salah satu formulir:
- Jika Anda memiliki entri DNS untuk myapis.apigee.net:
curl http://myapis.apigee.net:9001/proxy-base-path/resource-path
- Jika Anda tidak memiliki entri DNS untuk myapis.apigee.net:
curl http://routerIP:9001/proxy-base-path/resource-path -H 'Host: myapis.apigee.net'
Dalam formulir ini, Anda menentukan alamat IP {i>Router<i}, dan meneruskan alias {i>host<i} di Header
Host
.
Opsi saat Anda tidak memiliki DNS entri untuk host virtual
Salah satu pilihan ketika Anda tidak memiliki entri DNS adalah dengan mengatur alias {i>host<i} ke alamat IP Router dan port host virtual, sebagai routerIP:port. Contoh:
VHOST_ALIAS=192.168.1.31:9001
Kemudian Anda membuat perintah curl pada formulir di bawah ini:
curl http://routerIP:9001/proxy-base-path/resource-path
Opsi ini lebih disukai karena berfungsi dengan baik dengan UI Edge.
Jika Anda memiliki beberapa {i>Router<i}, tambahkan alias host untuk setiap {i>Router<i}, yang menentukan alamat IP setiap {i>Router<i} dan porta dari {i>host<i} virtual:
# 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"
Atau, Anda dapat menetapkan alias host ke nilai, seperti temp.hostalias.com
.
Kemudian, Anda harus meneruskan header Host
pada setiap permintaan:
curl -v http://routerIP:9001/proxy-base-path/resource-path -H 'host: temp.hostalias.com'
Atau, tambahkan alias host ke file /etc/hosts
Anda. Misalnya, tambahkan baris ini
ke /etc/hosts
:
192.168.1.31 temp.hostalias.com
Kemudian, Anda dapat membuat permintaan seolah-olah Anda memiliki entri DNS:
curl -v http://myapis.apigee.net:9001/proxy-base-path/resource-path