418 Saya Teko

Kisah HTTP 418 — kode status HTCPCP April Mop yang menjadi easter egg favorit di web — serta apa yang terjadi ketika Google menemukan 418 dan mengapa WAF yang mengembalikannya pada halaman nyata menjadi masalah.

Pertama kali diterbitkan: 4 Jul 2026 · Terakhir diperbarui: 29 Agu 2026 · Lanjutan
1 sinyal bukti di halaman ini

HTTP 418 I'm a teapot adalah kode status lelucon dari RFC HTCPCP April Mop 1998 (RFC 2324): teko yang diminta menyeduh kopi harus menolak karena ia adalah teko. Kode ini tidak pernah memiliki semantik aplikasi HTTP biasa, tetapi juga bukan 'unassigned' — RFC 9110 secara resmi mencadangkannya, dan registri IANA mencantumkannya sebagai (Unused), sehingga tidak tersedia untuk digunakan ulang secara umum. Upaya mengambilnya kembali pada 2017 kalah oleh kampanye 'Save 418'. Panduan Google tahun 2023 yang bertanggal memperlakukan 418 seperti 4xx non-429 lainnya dalam Search, dan halaman status crawler generik Google saat ini sama sekali tidak mencakup kode eksotis seperti ini. Hal itu penting ketika WAF atau lapisan perlindungan bot memakai 418 untuk memblokir permintaan (sebagian memang melakukannya) lalu tanpa sengaja menyajikannya kepada Googlebot — audit 418 seperti 4xx tak diinginkan lainnya. URL /coffee di situs ini mengembalikan 418 sungguhan sesuai RFC.

TL;DR — Perlakukan 418 yang tidak terduga sebagai 4xx non-429 biasa dari produsen yang tidak biasa. Simpan respons mentah, tentukan lapisan aplikasi, WAF, CDN, atau origin yang mengirimnya, lalu uji jalur crawler yang sama hingga URL penting kembali ke status yang dimaksud.

Pahami sinyal sebelum mengubah apa pun

Kode status mengklasifikasikan respons, bukan sistem yang memilihnya. Panduan Google yang dirujuk menempatkan 418 dalam perilaku umum 4xx non-429: konten tidak dipakai untuk pengindeksan dan URL yang sudah terindeks dapat dihapus seiring waktu; tidak ada jalur pemulihan khusus teapot.

Mulai dari satu URL dan simpan waktu, path, status, header, serta body. Periksa apakah hasil bergantung pada user-agent, IP, autentikasi, rate, atau lokasi.

Isolasi lapisan penerbit

Kerjakan dari respons publik ke dalam:

  1. Reproduksi dengan request mentah dan catat header serta body.
  2. Cocokkan path dan waktu pada log CDN, WAF, origin, framework, dan aplikasi.
  3. Bandingkan browser dengan crawler; teks halaman error tidak membuktikan sumbernya.
  4. Ubah hanya rule atau kode yang terbukti; konstanta bernama tidak berarti framework mengirim 418 secara default.

Verifikasi pemulihan

Uji ulang URL melalui jalur yang gagal. Hasilnya harus berupa status yang benar-benar dibutuhkan resource, biasanya 200 untuk halaman live yang dapat diindeks. Sampel juga URL tetangga di bawah rule yang sama.

Pantau 418 baru pada URL yang dapat diindeks. /coffee harus tetap menjadi kontrol 418 yang disengaja; halaman produksi tidak boleh mewarisinya.

Coba langsung

Ini adalah endpoint nyata di situs ini—bukan simulasi. Akses melalui tombol, buka di tab baru, atau curl -i dari terminal Anda, dan server akan merespons dengan kode status sebenarnya yang dibahas artikel ini.

Buka di tab baru ↗

Tambahkan catatan pakar

Sematkan kutipan pakar

Orang baru? Buat profilnya yang belum diklaim di /admin/experts/ → Sematkan kutipan pakar terlebih dahulu.