Anda sedang melihat dokumentasi Apigee Edge.
Buka
Dokumentasi Apigee X. info
Di Edge, Router menangani semua traffic API yang masuk. Artinya, semua HTTP dan HTTPS ke proxy API terlebih dahulu ditangani oleh Router Edge.
Host virtual memungkinkan Anda menghosting beberapa nama domain di server. Untuk Edge, server sesuai dengan Router Edge. Dengan menentukan beberapa {i> host<i} virtual pada {i>Router<i}, {i>Router<i} dapat menangani permintaan API ke beberapa nama domain.
Host virtual di Edge menentukan protokol akses (HTTP atau HTTPS), port Router terbuka, dan host alias. Alias host biasanya adalah nama domain DNS yang memetakan ke alamat IP Router.
Misalnya, gambar berikut menunjukkan Router dengan dua definisi host virtual:
Host virtual pertama menangani permintaan HTTPS di domain domainName1 dan domain kedua menangani permintaan HTTP pada domainName2.
Pada permintaan ke proxy API, Router membandingkan header Host
dari permintaan masuk dengan
daftar alias host yang ditentukan oleh semua host virtual untuk menentukan
{i>host<i} menangani permintaan.
Tentang definisi host virtual
Host virtual berisi informasi berikut:
- Nama internal host virtual. Anda menggunakan nama itu untuk mereferensikan di proxy API Anda dan saat mengonfigurasi host virtual.
- Alias host dari virtual host. Biasanya alias {i>host<i} adalah DNS
nama domain yang memetakan
ke alamat IP di {i>Router<i}. Header
Host
item Permintaan proxy API harus berisi alias host virtual host. - Port terbuka di Router.
- Apakah TLS (akses HTTPS) diaktifkan atau tidak (akses HTTP).
Misalnya, Anda menentukan informasi berikut saat membuat host virtual:
- name = myvhost
- alias host = apis.acme.com
- port = 443
- TLS diaktifkan
Berdasarkan setelan host virtual di atas, permintaan ke proxy API menggunakan bentuknya:
https://apis.acme.com/{proxy-base-path}/{resource-path}
dalam hal ini:
- {proxy-base-path} ditentukan saat Anda membuat proxy API dan bersifat unik untuk setiap proxy API.
Contoh:
https://apis.acme.com/characters
- {resource-path} jalur ke resource yang dapat diakses melalui proxy API. Contoh:
https://apis.acme.com/characters/coyote https://apis.acme.com/characters/roadrunner
Tentang {i>host<i} virtual di Edge untuk Cloud
Setiap organisasi Edge secara otomatis menyertakan dua lingkungan (test
dan prod
), dua host virtual di setiap lingkungan (default dan aman),
dan data DNS untuk
setiap alias {i>host<i}.
Alias host dari setiap host virtual yang disediakan Apigee berisi nama organisasi dan environment, seperti ditunjukkan dalam tabel berikut:
Lingkungan | Nama host virtual | Alias host | Port | TLS diaktifkan |
---|---|---|---|---|
prod | default | {org-name}-prod.apigee.net |
80 | Tidak |
aman | {org-name}-prod.apigee.net |
443 | Ya | |
uji | default | {org-name}-test.apigee.net |
80 | Tidak |
aman | {org-name}-test.apigee.net |
443 | Ya |
Misalnya, nama domain default organisasi bernama "myorg
"
di lingkungan prod
adalah "myorg-prod.apigee.net
".
Oleh karena itu, untuk mengakses proxy API di organisasi tersebut, Anda menggunakan URL dalam bentuk:
http://myorg-prod.apigee.net/{proxy-base-path}/{resource-path} https://myorg-prod.apigee.net/{proxy-base-path}/{resource-path}
Paket berbayar Apigee: Nama domain yang berisi "apigee.net" mungkin bukan yang ingin Anda tunjukkan pelanggan. Anda dapat menggunakan entri DNS dan data CNAME untuk memetakan nama domain ke organisasi Anda di Edge. Anda juga harus membuat {i>host<i} virtual dengan alias {i>host<i} yang diatur ke nama domain Anda. Hal ini memungkinkan developer mengakses API Anda melalui domain khusus untuk perusahaan Anda.
Berikut adalah contoh domain khusus di Edge:
https://apis.acme.com/{proxy-base-path}/{resource-path}
Tentang host virtual di Edge untuk Private Cloud
Saat Anda menginstal Apigee Edge untuk Private Cloud, tidak ada organisasi default, lingkungan, atau {i>host<i} virtual yang dibuat untuk Anda. Setelah Anda menyelesaikan proses penginstalan Edge, tindakan pertama Anda biasanya adalah membuat organisasi, lingkungan, dan {i>host<i} virtual melalui "orientasi" {i>checkout<i}.
Untuk melakukan orientasi, jalankan perintah berikut pada node Edge Management Server:
/opt/apigee/apigee-service/bin/apigee-service apigee-provision setup-org -f configFile
tempat configFile berisi informasi yang diperlukan untuk membuat pengguna, organisasi, lingkungan, dan {i>host<i} virtual.
Misalnya, Anda membuat:
- Pengguna yang Anda pilih untuk berfungsi sebagai administrator organisasi
- Organisasi bernama
example
- Lingkungan di organisasi yang bernama
prod
- Host virtual di lingkungan bernama
default
yang mengizinkan akses HTTP pada port 9.001 - Alias {i>host<i} dari nama DNS yang digunakan untuk mengakses {i>Router<i}, atau alamat IP {i>Router<i} dan
porta host virtual dalam bentuk
IP:9001
.
Anda nanti dapat menambahkan sejumlah organisasi, lingkungan, dan host virtual ke Edge versi lokal. Untuk informasi selengkapnya, lihat:
Host virtual dibuka di Router Edge. Oleh karena itu, Anda harus memastikan porta yang yang Anda tentukan untuk {i>host<i} virtual akan terbuka di Router. Anda dapat menggunakan perintah dalam formulir di bawah ini untuk membuka port:
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 9001 -j ACCEPT --verbose
Setelah menjalankan perintah tersebut, Anda dapat mengakses API menggunakan URL dalam bentuk:
http://<router-ip>:9001/{proxy-base-path}/{resource-path}
Biasanya, Anda tidak memublikasikan API ke pelanggan dengan alamat IP dan nomor port. Sebagai gantinya, Anda menentukan entri DNS untuk {i>router<i} dan porta. Contoh:
http://myAPI.myCo.com/{proxy-base-path}/{resource-path}
Saat Anda mendefinisikan entri DNS, Anda juga harus membuat {i>host<i} virtual dengan alias {i>host<i} yang cocok dengan nama domain entri DNS. Dari contoh di atas, Anda akan menentukan alias host {i>myAPI.myCo.com<i} saat Anda membuat {i>host<i} virtual.
Tentang alias host dan nama DNS
Satu properti yang Anda tetapkan untuk host virtual adalah alias host. Alias {i>host<i} adalah biasanya nama DNS dari {i>host<i} virtual. Cara Anda menetapkan alias host bergantung pada jenis Penginstalan edge: Cloud atau Private Cloud.
Alias host dan Nama DNS di Edge untuk Cloud
Di Edge untuk Cloud, saat Anda pertama kali membuat organisasi Edge, Apigee secara otomatis
membuat dua lingkungan (test
dan prod
), dua host virtual di
setiap lingkungan (default dan aman), serta data DNS untuk setiap lingkungan
{i>host<i} virtual.
Alias host dari host virtual berisi nama organisasi dan lingkungan. Oleh karena itu, permintaan melalui host virtual memiliki bentuk:
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}
Biasanya, Anda ingin membuat {i>host<i} virtual yang menggunakan nama domain Anda, daripada menggunakan
domain apigee.net
default. Yang akan dilakukan
jadi, Anda harus terlebih dahulu membuat
entri DNS dan data CNAME Anda.
Gambar berikut menunjukkan konfigurasi standar tentang cara Edge memproses permintaan API:
Dalam contoh ini:
- api.acme.com adalah nama domain yang Anda inginkan.
- Anda menetapkan entri DNS dan data CNAME untuk mengarahkan api.acme.com ke acme-prod.apigee.net.
- Permintaan berisi header
Host
yang digunakan Router untuk menentukan {i>host<i} virtual yang menangani permintaan.
Dalam contoh ini, Anda menentukan informasi berikut dalam definisi host virtual:
- name = myvhost
- alias host = apis.acme.com
- port = 443
- Mengaktifkan akses TLS
Lihat Mengonfigurasi host virtual untuk Cloud untuk mengetahui informasi selengkapnya.
Alias host dan nama DNS di Edge untuk Private Cloud
Seperti halnya Edge untuk Cloud, Anda membuat host virtual yang menggunakan nama domain Anda sendiri untuk host alias. Anda kemudian membuat entri DNS dan data CNAME Anda sendiri untuk mengakses {i>host<i} virtual tersebut.
Salah satu perbedaan antara Cloud dan Private Cloud terletak di Cloud Apigee nama DNS yang dibuat secara otomatis untuk organisasi Anda, dalam bentuk:
- name=default:
http://{org-name}-{env-name}.apigee.net
(Port Router 80) - nama=secure:
https://{org-name}-{env-name}.apigee.net
(Port Router 443)
Di Edge untuk Private Cloud, Anda harus membuat entri DNS ke alamat IP dan port dari {i>Router<i} Anda.
Misalnya, Anda menentukan informasi ini dalam definisi host virtual:
- name = myvhost
- alias host = apis.acme.com
- port = 9001
- Mengaktifkan akses TLS
Gambar berikut menunjukkan konfigurasi standar tentang cara Edge memproses permintaan API:
Dalam contoh ini:
- api.acme.com adalah nama domain yang Anda inginkan.
- Anda menentukan entri DNS dan data CNAME untuk mengarahkan api.acme.com ke IP alamat dan porta {i>Router<i}.
- Permintaan berisi header
Host
yang digunakan Router untuk menentukan {i>host<i} virtual yang menangani permintaan.
Lihat Mengonfigurasi host virtual untuk Private Cloud untuk mengetahui informasi selengkapnya.
Alias host dan karakter pengganti
Anda dapat menyertakan "*" {i>wildcard <i}dalam alias {i>host<i}. "*" karakter pengganti dapat hanya di awal (mendahului ".") pertama dari alias host, dan tidak dapat dicampur dengan karakter.
Berikut contoh alias host yang valid menggunakan karakter pengganti:
*.example.com
Contoh berikut tidak valid:
www.*.example.com w*.example.com
Menggunakan {i>wildcard <i}dalam
alias {i>host<i} virtual memungkinkan
Proxy API menangani panggilan yang ditujukan ke beberapa subdomain seperti
alpha.example.com
, beta.example.com
, atau
live.example.com
. Menggunakan alias karakter pengganti juga membantu Anda menggunakan lebih sedikit
host per lingkungan untuk tetap berada dalam produk
, karena host virtual dengan karakter pengganti hanya dihitung sebagai satu host virtual.
Sertifikat TLS untuk host virtual harus memiliki karakter pengganti yang cocok di nama CN sertifikat.
Misalnya, *.example.com
.
Tentang properti host virtual
Di Edge, host virtual diwakili oleh objek XML. Misalnya, objek XML berikut menentukan host virtual:
<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>
Daftar properti yang dapat Anda tetapkan didasarkan pada apakah Anda menggunakan Edge untuk Cloud atau tidak atau Edge untuk Private Cloud. Jika Anda menggunakan Edge untuk Private Cloud, daftar properti yang tersedia juga tergantung pada versi Edge Anda. Untuk deskripsi lengkap tentang semua properti {i>host<i} virtual, lihat Referensi properti host virtual.
Untuk mengetahui informasi selengkapnya tentang cara membuat host virtual untuk versi Edge khusus Anda, lihat: