404 bawaan adalah halaman putih dengan nama dan versi server tertera di atasnya. Ia melepaskan pengunjung, dan menyerahkan nomor versi yang tepat kepada siapa pun yang memindai situs Anda. Halaman buatan Anda sendiri menahan orang tetap di situs dan tidak mengucapkan apa yang tak seharusnya.
Nginx
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /404.html { root /var/www/site/public; internal; }
location = /50x.html { root /var/www/site/public; internal; }
server_tokens off;
internal berarti halaman itu hanya dapat dicapai sebagai galat, bukan dengan mengetik alamatnya. server_tokens off menghapus versi dari setiap jawaban dan setiap halaman galat.
Apache dan LiteSpeed
ErrorDocument 404 /404.html
ErrorDocument 500 /50x.html
ServerSignature Off
Apa yang sebaiknya ada di halaman itu
- Satu kalimat lugas yang menyebut apa yang terjadi, tanpa jejak tumpukan.
- Tautan ke halaman depan dan ke pencarian.
- Kepala dan kaki halaman yang sama dengan bagian situs lainnya, supaya tidak terasa seperti jalan buntu.
- Tidak ada yang dimuat dari jalur yang barangkali juga rusak — bila bisa, tanamkan CSS-nya langsung di halaman.
Halaman 404 harus mengembalikan status 404, bukan 200. 404 lunak — halaman ramah dengan status berhasil — membuat setiap alamat yang salah ketik tampak seperti isi yang sungguhan, dan mesin pencari akan mengindeks semuanya.
curl -sSI https://yourdomain.com/no-such-page | head -1
# HTTP/2 404
Halaman 500 lain perkara
Ia ditampilkan saat aplikasinya rusak, jadi ia tidak boleh bergantung pada aplikasi itu. Simpanlah sebagai berkas statis yang bisa disajikan server web sendirian.