

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Mengatur header kustom
<a name="setting-custom-headers"></a>

Ada dua cara untuk menentukan header HTTP khusus untuk aplikasi Amplify. Anda dapat menentukan header di konsol Amplify atau Anda dapat menentukan header dengan mengunduh dan mengedit file aplikasi `customHttp.yml` dan menyimpannya di direktori root proyek Anda.

**Untuk mengatur header khusus untuk aplikasi dan menyimpannya di konsol**

1. Masuk ke Konsol Manajemen AWS dan buka konsol [Amplify](https://console.aws.amazon.com/amplify/).

1. Pilih aplikasi yang header kustomnya akan diatur.

1. Di panel navigasi, pilih **Hosting**, lalu pilih **Header khusus**.

1. Pada halaman **Custom header**, pilih **Edit**.

1. Di jendela **Edit header kustom**, masukkan informasi untuk header kustom Anda menggunakan format [YAMAL header kustom](custom-header-YAML-format.md).

   1. Untuk `pattern`, masukkan pola yang akan dicocokkan.

   1. Untuk `key`, masukkan nama header kustom.

   1. Untuk `value`, masukkan nilai header kustom.

1. Pilih **Simpan**.

1. Menerapkan ulang aplikasi untuk menerapkan header kustom baru.
   + Untuk CI/CD aplikasi, navigasikan ke cabang untuk menerapkan dan pilih **Redeploy** versi ini. Anda juga dapat melakukan build baru dari repositori Git Anda.
   + Untuk aplikasi penerapan manual, terapkan aplikasi lagi di konsol Amplify.

**Untuk mengatur header khusus untuk aplikasi dan menyimpannya di root repositori Anda**

1. Masuk ke Konsol Manajemen AWS dan buka konsol [Amplify](https://console.aws.amazon.com/amplify/).

1. Pilih aplikasi yang header kustomnya akan diatur.

1. Di panel navigasi, pilih **Hosting**, lalu pilih **Header khusus**.

1. Pada halaman **Custom header**, pilih **Download YML**.

1. Buka unduhan file `customHttp.yml` di editor kode pilihan Anda, lalu masukkan informasi untuk header kustom Anda menggunakan [format YAML header kustom](custom-header-YAML-format.md).

   1. Untuk `pattern`, masukkan pola yang akan dicocokkan.

   1. Untuk `key`, masukkan nama header kustom.

   1. Untuk `value`, masukkan nilai header kustom.

1. Simpan file `customHttp.yml` yang telah diedit di direktori root proyek. Jika Anda menggunakan monorepo, simpan file `customHttp.yml` di root repo.

1. Menerapkan ulang aplikasi untuk menerapkan header kustom baru.
   + Untuk CI/CD aplikasi, lakukan build baru dari repositori Git Anda yang menyertakan file baru`customHttp.yml`.
   + Untuk aplikasi penerapan manual, terapkan aplikasi lagi di konsol Amplify dan sertakan `customHttp.yml` file baru dengan artefak yang Anda unggah.

**catatan**  
Header khusus yang disetel dalam `customHttp.yml` file dan diterapkan di direktori root aplikasi akan menimpa header khusus yang ditentukan di **bagian Header khusus** di konsol Amplify.

## Contoh header kustom keamanan
<a name="example-security-headers"></a>

Header keamanan kustom memungkinkan penerapan HTTPS, mencegah serangan XSS, dan melindungi peramban dari clickjacking. Gunakan sintaks YAML berikut untuk menerapkan header keamanan kustom ke aplikasi Anda.

```
customHeaders:
  - pattern: '**'
    headers:
      - key: 'Strict-Transport-Security'
        value: 'max-age=31536000; includeSubDomains'
      - key: 'X-Frame-Options'
        value: 'SAMEORIGIN'
      - key: 'X-XSS-Protection'
        value: '1; mode=block'
      - key: 'X-Content-Type-Options'
        value: 'nosniff'
      - key: 'Content-Security-Policy'
        value: "default-src 'self'"
```

## Mengatur header kustom Cache-Control
<a name="example-cache-headers"></a>

Aplikasi yang dihosting dengan Amplify menghormati `Cache-Control` header yang dikirim oleh asal, kecuali jika Anda menggantinya dengan header khusus yang Anda tentukan. Amplify hanya menerapkan header kustom Cache-Control untuk respons yang berhasil dengan kode status. `200 OK` Ini mencegah respons kesalahan di-cache dan disajikan ke pengguna lain yang membuat permintaan yang sama.

Anda dapat menyesuaikan perintah `s-maxage` secara manual untuk mendapatkan kendali yang lebih besar atas performa dan ketersediaan deployment aplikasi Anda. Misalnya, untuk menambah durasi konten tetap berada di cache di tepi, Anda dapat meningkatkan waktu untuk tayang (TTL) secara manual dengan memperbarui `s-maxage` ke nilai yang lebih lama dari default 600 detik (10 menit).

Untuk menentukan nilai kustom untuk `s-maxage`, gunakan format YAML berikut. Contoh ini membuat konten terkait tetap berada di cache di tepi selama 3600 detik (satu jam).

```
customHeaders:
  - pattern: '/img/*'
    headers:
      - key: 'Cache-Control' 
        value: 's-maxage=3600'
```

Untuk informasi selengkapnya tentang mengontrol performa aplikasi dengan header, lihat[Menggunakan header Cache-Control untuk meningkatkan performa aplikasi](Using-headers-to-control-cache-duration.md).