All Products
Search
Document Center

Server Load Balancer:Header HTTP

Last Updated:Jun 09, 2026

Topik ini menjelaskan header HTTP tambahan yang didukung oleh Application Load Balancer (ALB) dan cara mengonfigurasikannya untuk sebuah listener. Anda dapat menggunakan header ini untuk menerapkan fitur tertentu sesuai kebutuhan Anda.

Header ALB yang didukung

Header HTTP adalah bidang dalam bagian header pesan permintaan atau respons HTTP. Anda dapat menyesuaikan header untuk kebutuhan spesifik, yang dapat mengakibatkan penggunaan header HTTP tambahan oleh server web dan browser. Tabel berikut menjelaskan header HTTP tambahan yang didukung ALB beserta fungsinya.

Header field

Description

Listener protocols

X-Forwarded-For

Mengaktifkan listener untuk menggunakan header X-Forwarded-For guna mengambil alamat IP client.

  • Saat header X-Forwarded-For diaktifkan:

    ALB menambahkan atau menghapus header X-Forwarded-For dari permintaan sebelum meneruskannya ke server backend.

    • Add (Default)

      Secara default, ALB menyimpan alamat IP client dalam bidang header X-Forwarded-For dan mengirimkan bidang header ini ke server backend. Jika permintaan asli tidak berisi bidang header X-Forwarded-For, ALB membuat bidang header X-Forwarded-For yang berisi alamat IP client. Jika tidak, ALB menambahkan alamat IP client ke bidang header X-Forwarded-For yang sudah ada, lalu mengirimkan bidang header tersebut ke server backend. Bidang header permintaan X-Forwarded-For dapat berisi beberapa alamat IP yang dipisahkan koma.

    • Remove

      ALB menghapus header X-Forwarded-For dari permintaan sebelum meneruskannya ke server backend.

  • Saat header X-Forwarded-For dinonaktifkan:

    ALB tidak memodifikasi header X-Forwarded-For dalam permintaan sebelum meneruskannya ke server backend.

Format:

X-Forwarded-For: <client-ip-address>, <proxy1>, <proxy2>, …

Klik untuk melihat contoh header X-Forwarded-For yang diterima oleh server backend berdasarkan aksi yang dipilih (Add, Remove, atau Disable).

Pada contoh ini, alamat IP client yang terhubung ke ALB adalah 127.0.0.1.

Request description

Sample request

Enable X-Forwarded-For header field

DisableX-Forwarded-For header field

Add

Remove

Permintaan asli tidak berisi header X-Forwarded-For

GET /index.html HTTP/1.1

Host: example.com

X-Forwarded-For: 127.0.0.1

None

None

Permintaan asli berisi header X-Forwarded-For dengan satu alamat IP client

GET /index.html HTTP/1.1

Host: example.com

X-Forwarded-For: 127.0.0.2

X-Forwarded-For: 127.0.0.2, 127.0.0.1

None

X-Forwarded-For: 127.0.0.2

Permintaan asli berisi header X-Forwarded-For dengan beberapa alamat IP client

GET /index.html HTTP/1.1

Host: example.com

X-Forwarded-For: 127.0.0.2, 127.0.0.3

X-Forwarded-For: 127.0.0.2, 127.0.0.3, 127.0.0.1

None

X-Forwarded-For: 127.0.0.2, 127.0.0.3

Untuk petunjuk cara mengambil alamat IP client yang sebenarnya, lihat Retrieve the client IP on a backend server.

SLB-ID

Menambahkan header SLB-ID, yang berisi ID instans ALB.

  • HTTP

  • HTTPS

  • QUIC

X-Forwarded-Proto

Menambahkan header X-Forwarded-Proto, yang berisi protokol yang digunakan client untuk terhubung ke listener. Aplikasi Anda dapat menggunakan protokol yang tersimpan dalam header X-Forwarded-Proto untuk mengalihkan permintaan ke URL target.

Format:

X-Forwarded-Proto: <originatingProtocol>

Contoh kasus penggunaan: Sebuah instans ALB menggunakan listener HTTPS, sedangkan komunikasi antara listener dan grup server backend-nya menggunakan HTTP. Dalam skenario ini, server backend menerima permintaan dengan protokol HTTP. Jika server backend dikonfigurasi dengan aturan untuk secara otomatis mengalihkan HTTP ke HTTPS, server tersebut mungkin salah mengira bahwa client menggunakan HTTP, sehingga menyebabkan loop pengalihan. Dengan mengaktifkan header X-Forwarded-Proto, server backend dapat mengambil protokol permintaan asli dari client, sehingga mencegah pengalihan yang salah. Kami merekomendasikan juga mengaktifkan header X-Forwarded-Port agar server backend dapat memperoleh port permintaan asli dari client.

  • HTTP

  • HTTPS

  • QUIC

X-Forwarded-Port

Menambahkan header X-Forwarded-Port, yang berisi port listener yang menerima permintaan.

Format:

X-Forwarded-Port: <port>
  • HTTP

  • HTTPS

  • QUIC

X-Forwarded-Host

Menambahkan header X-Forwarded-Host, yang berisi host asli yang diminta oleh client.

Format:

X-Forwarded-Host: <host>
  • HTTP

  • HTTPS

  • QUIC

X-Forwarded-Client-srcport

Menambahkan header X-Forwarded-Client-srcport, yang berisi port sumber dari client.

Format:

X-Forwarded-Client-srcport: <port>

X-Forwarded-Clientcert-subjectdn

Aktifkan bidang header X-Forwarded-Clientcert-subjectdn untuk mendapatkan informasi pemilik sertifikat klien yang digunakan untuk mengakses instans ALB.

Setelah Anda mengaktifkan header ini, Anda harus memasukkan nama header HTTP kustom.

HTTPS

X-Forwarded-Clientcert-issuerdn

Aktifkan bidang header X-Forwarded-Clientcert-issuerdn untuk mengambil informasi penerbit sertifikat klien yang digunakan untuk mengakses instans ALB.

Setelah Anda mengaktifkan header ini, Anda harus memasukkan nama header HTTP kustom.

HTTPS

X-Forwarded-Clientcert-fingerprint

Aktifkan bidang header X-Forwarded-Clientcert-fingerprint untuk mendapatkan nilai sidik jari sertifikat klien yang digunakan untuk mengakses instans ALB.

Setelah Anda mengaktifkan header ini, Anda harus memasukkan nama header HTTP kustom.

HTTPS

X-Forwarded-Clientcert-clientverify

Aktifkan bidang header X-Forwarded-Clientcert-clientverify untuk mendapatkan hasil verifikasi sertifikat klien yang digunakan untuk mengakses instans ALB.

Setelah Anda mengaktifkan header ini, Anda harus memasukkan nama header HTTP kustom.

HTTPS

Header HTTP tambahan tersebut dikonfigurasi menggunakan sakelar pada tingkat listener. Saat diaktifkan, ALB secara otomatis menambahkan header yang sesuai ke permintaan yang diteruskan ke server backend. Jika Anda perlu menyesuaikan nilai header—misalnya, menentukan protokol atau port permintaan asli—Anda dapat mengaturnya secara manual dengan menggunakan aksi Insert Header dalam aturan pengalihan. Sakelar tingkat listener cocok untuk sebagian besar skenario transmisi langsung, sedangkan aturan pengalihan ideal untuk skenario yang memerlukan kontrol detail halus terhadap nilai header. Pengaturan ini terletak di bagian Advanced Settings konfigurasi listener dan editor aturan pengalihan, masing-masing.

Catatan
  • Kami merekomendasikan agar server backend Anda mengikuti spesifikasi HTTP dan memperlakukan kunci header HTTP sebagai case-insensitive.

    • Header X-Forwarded-For yang diteruskan ALB ke server backend selalu diawali huruf kapital.

    • Untuk header HTTP tambahan lainnya, jika permintaan klien sudah berisi salah satu header ini, ALB mempertahankan kapitalisasi aslinya saat meneruskannya. Jika tidak, ALB menambahkan header menggunakan kapitalisasi yang ditampilkan dalam tabel di atas.

  • Saat Anda mengaktifkan X-Forwarded-Clientcert-subjectdn, X-Forwarded-Clientcert-issuerdn, X-Forwarded-Clientcert-fingerprint, atau X-Forwarded-Clientcert-clientverify, Anda tidak dapat mengatur nama header HTTP kustom menjadi salah satu bidang terbatas berikut: slb-id, slb-ip, x-forwarded-for, x-forwarded-proto, x-forwarded-eip, x-forwarded-port, x-forwarded-client-srcport, x-forwarded-host, connection, upgrade, content-length, transfer-encoding, keep-alive, te, host, cookie, remoteip, atau authority.

  • Deskripsi Header HTTP Tambahan Terkait Sertifikat Klien

    Header HTTP tambahan berikut hanya berlaku ketika autentikasi timbal balik diaktifkan untuk HTTPS listener.

    X-Forwarded-Clientcert-subjectdn

    • Tujuan: Berisi Subject Distinguished Name (DN) dari sertifikat klien.

    • Isi: Informasi identitas pemilik sertifikat.

    • Format contoh: X-Forwarded-Clientcert-Subjectdn: CN=client.example.com,O=Example Corp,C=US

    • Mencakup:

      • CN (Common Name)

      • O (Organization)

      • OU (Organizational Unit)

      • C (Country)

      • ST (State)

      • L (Locality)

    X-Forwarded-Clientcert-issuerdn

    • Tujuan: Berisi Issuer Distinguished Name (DN) dari sertifikat klien.

    • Isi: Informasi tentang Certificate Authority (CA) yang menerbitkan sertifikat.

    • Format contoh: X-Forwarded-Clientcert-Issuerdn: CN=Example CA,O=Example Corp,C=US

    • Kasus penggunaan: Memverifikasi apakah sertifikat diterbitkan oleh CA tepercaya.

    X-Forwarded-Clientcert-fingerprint

    • Tujuan: Berisi sidik jari digital dari sertifikat klien.

    • Isi: Sidik jari sertifikat. Ini adalah nilai hash dengan panjang tetap yang dihitung dari seluruh isi sertifikat menggunakan algoritma hash, seperti SHA-1 atau SHA-256. Nilai ini berfungsi sebagai pengenal unik untuk sertifikat.

    • Format contoh: X-Forwarded-Clientcert-Fingerprint: SHA256=1234567890abcdef...

    • Kasus penggunaan: Mengidentifikasi sertifikat secara unik untuk validasi dan audit.

    X-Forwarded-Clientcert-clientverify

    • Tujuan: Berisi hasil verifikasi sertifikat klien.

    • Isi: Status verifikasi sertifikat.

    • Nilai yang mungkin:

      • SUCCESS: Sertifikat diverifikasi.

      • FAILED: Verifikasi sertifikat gagal.

      • NONE: Tidak ada sertifikat klien yang diajukan.

      • EXPIRED: Sertifikat telah kedaluwarsa.

      • REVOKED: Sertifikat telah dicabut.

Tambahkan header di konsol

Tambahkan header saat pembuatan listener

  1. Masuk ke ALB console.

  2. Di bilah navigasi atas, pilih wilayah tempat instans ALB ditempatkan.

  3. Gunakan salah satu metode berikut untuk membuka wizard konfigurasi listener:

    • Di halaman Instances, temukan instans yang ingin Anda kelola dan klik Create Listener di kolom Actions.

    • Di halaman Instances, klik ID instans target. Di tab Listener, klik Create Listener.

  4. Di wizard Configure Listener, konfigurasikan parameter berikut lalu klik Next.

    Parameter

    Description

    Listener Protocol

    Pilih protokol untuk listener.

    Advanced Settings

    Klik Modify untuk membuka pengaturan lanjutan.

    Custom HTTP Header

    Pilih header HTTP tambahan yang ingin Anda aktifkan sesuai kebutuhan bisnis Anda.

    Catatan

    Bagian ini hanya menjelaskan parameter yang terkait header. Untuk informasi lebih lanjut tentang parameter lainnya, lihat topik berikut:

  5. Ikuti petunjuk di layar untuk menyelesaikan pembuatan listener.

Tambahkan header ke listener yang sudah ada

  1. Masuk ke ALB console.

  2. Di bilah navigasi atas, pilih wilayah tempat instans ALB ditempatkan.

  3. Di halaman Instances, klik ID instans target.

  4. Di tab Listener, temukan listener target lalu pilih 更多>Modify Listener di kolom Actions.

  5. Di kotak dialog Modify Listener, klik Modify di sebelah kanan Advanced Settings.

  6. Di bagian Custom HTTP Header, aktifkan atau nonaktifkan header sesuai kebutuhan, lalu klik Save.

Tambahkan header menggunakan API

Anda dapat mengonfigurasi header tambahan saat membuat listener atau memodifikasi konfigurasi header untuk listener yang sudah ada.

  • Buat listener: Panggil operasi API CreateListener dan konfigurasikan parameter XForwardedForConfig.

  • Modifikasi listener yang sudah ada: Panggil operasi API UpdateListenerAttribute untuk memperbarui parameter XForwardedForConfig.

Referensi

Konsol

API

  • CreateListener: Membuat listener HTTP, HTTPS, atau QUIC. Anda dapat menambahkan header HTTP dengan mengatur parameter XForwardedForConfig.

  • UpdateListenerAttribute: Memperbarui konfigurasi listener. Anda dapat memperbarui parameter XForwardedForConfig untuk memodifikasi konfigurasi header.