Daftar kode status HTTP. Kode status HTTP


-server (apache atau nginx) untuk permintaan klien terdiri dari dua bagian: header dan isi pesan itu sendiri.
Untuk mendiagnosis masalah pada situs, ada baiknya untuk melihat secara spesifik headernya, karena header tersebut membawa sebagian informasi layanan tentang cara kerja server saat mengirimkan halaman ke klien.




HTTP/1.1 200 OK Server: nginx Tanggal: Sabtu, 15 Mei 2010 06:04:26 GMT Tipe Konten: text/html; charset=UTF-8 Koneksi: tutup Kontrol-Cache: no-cache,no-store,max-age=0,must-revalidate Content-Length: 6426 Kedaluwarsa: Sabtu 15 Mei 06:04:26 2010 GMT Terakhir Dimodifikasi: Sabtu 15 Mei 06:04:26 2010 GMT Set-Cookie: S=; jalur=/; kadaluwarsa=Rabu, 17-Mei-2000 06:04:26 GMT Set-Cookie: S=; domain=.ya.ru; jalur=/; expired=Rabu, 17-Mei-2000 06:04:26 GMT X-XRDS-Lokasi: http://openid.yandex.ru/server_xrds/



Yandex
Header dipisahkan dari isi pesan dengan baris kosong.
Server HTTP menunjukkan kode status permintaan di baris header pertama.

Kode status dapat digunakan untuk menilai hasil kerja server saat memproses permintaan klien.

Kelas kode respons:

1xx Informasi

Kelas ini berisi kode-kode yang menginformasikan tentang proses transfer.

2xx Sukses

Pesan kelas ini menginformasikan tentang kasus keberhasilan penerimaan dan pemrosesan permintaan klien. Tergantung pada statusnya, server juga dapat mengirimkan header dan isi pesan.

Pengalihan 3xx

Kode kelas 3xx memberi tahu klien bahwa agar berhasil menyelesaikan operasi, perlu membuat permintaan lain (biasanya melalui tautan berbeda). Dari kelas ini, lima kode 301, 302, 303, 305 dan 307 berhubungan langsung dengan pengalihan. Alamat tujuan klien harus mengajukan permintaan ditunjukkan oleh server di header Lokasi. Anda dapat mengetahui kode respons server terhadap permintaan tertentu menggunakan utilitas keriting
, menyebutnya dengan tombol -I.
Perintah curl dapat digunakan dari baris perintah sistem operasi mirip *nix, misalnya dengan masuk ke server menggunakan .

Mari kita gunakan untuk meminta yandex.ru:

keriting -Saya http://yandex.ru

dan kami mendapatkan jawaban berikut:

Server Yandex menanggapi permintaan yandex.ru dengan kode “301 Dipindahkan Secara Permanen”, yang, sebagaimana dinyatakan di atas, berarti kebutuhan untuk menjalankan permintaan di alamat yang diusulkan oleh server (alamat ini ditunjukkan di header “Lokasi” , dan dalam hal ini adalah www.yandex.ru) .
Server memberi tahu kita bahwa kita perlu menghubungi bukan yandex.ru, tetapi www.yandex.ru.

Mari kita minta www.yandex.ru:

keriting -Saya http://www.yandex.ru

kami mendapatkan jawabannya:

HTTP/1.1 200 OK Server: nginx Tanggal: Sabtu, 15 Mei 2010 06:01:26 GMT Tipe Konten: text/html; charset=UTF-8 Koneksi: tutup Kontrol-Cache: no-cache,no-store,max-age=0,must-revalidate Content-Length: 73507 Kedaluwarsa: Sabtu 15 Mei 06:01:27 2010 GMT Terakhir Dimodifikasi: Sabtu 15 Mei 06:01:27 2010 GMT Set-Cookie: S=; jalur=/; kadaluwarsa=Rabu, 17-Mei-2000 06:01:26 GMT Set-Cookie: S=; domain=.yandex.ru; jalur=/; kadaluwarsa=Rabu, 17-Mei-2000 06:01:26 GMT Set-Cookie: yandexuid=3572906971273903287; domain=.yandex.ru; jalur=/; kadaluwarsa=Sel, 12-Mei-2020 06:01:26 GMT X-XRDS-Lokasi: http://openid.yandex.ru/server_xrds/

Kode responsnya adalah “200 OK”. Server menyelesaikan permintaan dengan benar dan mengembalikan hasilnya kepada pengguna.

Kesalahan Klien 4xx

Kelas kode 4xx dimaksudkan untuk menunjukkan kesalahan di sisi klien.

400 Permintaan Buruk

Permintaan tidak diterima oleh server karena kesalahan sintaksis. Klien harus mengakses kembali sumber daya dengan permintaan yang dimodifikasi.

401 Tidak Sah

Permintaan tersebut memerlukan otorisasi pengguna. Server harus meminta pengguna untuk nama pengguna dan kata sandi. Jika data yang ditentukan salah, server akan mengembalikan status yang sama lagi. Misalnya, sistem pemantauan kami mengharuskan Anda memberikan login dan kata sandi untuk masuk ke sistem.
Saat meminta halaman pemantauan, server mengirimkan header berikut:

keriting -Saya http://monitoring.z8.ru

server akan merespons bahwa itu tidak akan memberikan hasil sampai login/kata sandi diberikan:

HTTP/1.1 401 Otorisasi Diperlukan Server: nginx/0.5.7 Tanggal: Sabtu, 15 Mei 2010 06:16:23 GMT Tipe Konten: teks/html; charset=iso-8859-1 Transfer-Encoding: terpotong Koneksi: tetap hidup WWW-Otentikasi: Basic realm="Nagios Access"

403 Dilarang

Server mengembalikan kesalahan 403 ketika mencoba melihat direktori yang aksesnya ditolak. Server memahami permintaan tersebut, tetapi menolak untuk memenuhinya karena pembatasan akses klien ke sumber daya yang ditentukan. Jika otentikasi menggunakan HTTP diperlukan untuk mengakses sumber daya, server akan mengembalikan respons 401. Jika tidak, pembatasan ditetapkan oleh administrator server atau pengembang aplikasi web dan dapat berupa apa saja tergantung pada kemampuan perangkat lunak yang digunakan. Alasan yang paling mungkin untuk pembatasan ini adalah:

  • Upaya telah dilakukan untuk mengakses sumber daya sistem server web (misalnya, file .htaccess atau .htpasswd) atau file yang ditolak aksesnya menggunakan pengaturan akses server.
  • Akses memerlukan otentikasi non-HTTP (misalnya, untuk mengakses CMS atau bagian untuk pengguna terdaftar).
  • Server tidak puas dengan alamat IP klien (misalnya pemblokiran sementara karena seringnya permintaan, atau pada tahap pengembangan aplikasi hanya beberapa IP yang diizinkan mengakses).
  • Tidak ada file indeks di direktori yang diminta.

404 Tidak Ditemukan

Server memahami permintaan tersebut, tetapi tidak menemukan sumber daya yang sesuai pada tautan yang ditentukan. Mari kita minta halaman yang tidak ada:

ikal -Saya http://yandex.ru/instr/index.php

Dan kami mendapat respons 404:

HTTP/1.1 404 Tidak Ditemukan Tanggal: Sabtu, 15 Mei 2010 06:56:24 GMT Server: Apache/2.2.9 (Unix) mod_perl/2.0.4 Perl/v5.8.8 Rentang Penerimaan: byte Bervariasi: Koneksi Pengkodean Terima : tutup Tipe Konten: teks/html

Metode 405 Tidak Diizinkan

Metode permintaan yang ditentukan klien tidak dapat diterapkan pada sumber daya saat ini.

499 Permintaan Tertutup Klien (Nginx)

Kesalahan ini berarti klien menutup koneksi sebelum apa pun dikirimkan kepadanya oleh server. Dalam banyak kasus, 499 baik-baik saja. Katakanlah klien menutup browser sebelum halaman yang baru dibuka sempat dimuat (atau memuat gambar dari halaman yang baru dibuka). Namun, perlu disebutkan bahwa Yandex.Metrica, ketika menerima kode 499, menganggap bahwa server tidak tersedia.

Kesalahan Server 5xx

Kode 5xx dialokasikan untuk kasus operasi yang gagal karena kesalahan server.

500 Kesalahan Server Internal

Kesalahan server internal apa pun yang tidak termasuk dalam cakupan kesalahan 5xx lainnya. Hal ini terutama dapat terjadi dalam kasus-kasus berikut:

  • kesalahan pengguna dalam file .htaccess.
  • kesalahan dalam skrip pengguna.
  • masalah pada server

502 Gerbang Buruk

Gateway atau server proksi menerima pesan yang menunjukkan bahwa operasi perantara gagal. Biasanya masalah terjadi ketika server HTTP tidak tersedia karena masalah teknis, atau skrip klien tidak memiliki cukup memori/waktu untuk menyelesaikan permintaan.

503 Layanan Tidak Tersedia

Server untuk sementara tidak dapat memproses permintaan karena alasan teknis. Di hosting kami, kesalahan ini menunjukkan bahwa pengguna telah melampaui batas jumlah penangan server HTTP atau jumlah total proses per akun.

Pengenalan kode baru harus dilakukan hanya setelah persetujuan dengan IETF. Namun, ada dua kode yang diketahui digunakan namun tidak disebutkan dalam RFC: 449 Retry With . Frasa penjelasan “Balas Dengan” juga disebutkan dalam spesifikasi WebDAV V Jaringan Pengembang Microsoft, diperkenalkan Microsoft dan 509 Batas Bandwidth Terlampaui, diperkenalkan pada cPanel. Perusahaan Google mengusulkan agar IETF menggunakan kode HTTP 451 untuk memberitahukan pemblokiran portal yang disengaja.

Klien mungkin tidak mengetahui semua kode status, tetapi harus merespons sesuai dengan kelas kode tersebut. Saat ini ada lima kelas kode status.

server web Layanan Informasi Internet dalam file lognya, selain kode status standar, ia menggunakan subkode, menuliskannya dengan titik setelah yang utama. Pada saat yang sama, subkode ini tidak ditempatkan dalam tanggapan dari server - administrator server memerlukannya agar ia dapat menentukan sumber masalah dengan lebih akurat.

Daftar ulasan

Di bawah ini adalah daftar ikhtisar semua kode respons yang dijelaskan dalam artikel ini:

  • (informasional):
  • (berhasil):
  • (pengalihan):
  • (kesalahan klien):
  • (kesalahan server):

Deskripsi kode

Informasi

Kelas ini berisi kode-kode yang menginformasikan tentang proses transfer. Saat bekerja melalui protokol versi 1.0, pesan dengan kode tersebut harus diabaikan. Di versi 1.1, klien harus siap menerima pesan kelas ini sebagai respons normal, tetapi server tidak perlu mengirim apa pun. Pesan-pesan itu sendiri dari server hanya berisi baris awal respons dan, jika diperlukan, beberapa kolom header khusus respons. Server proxy harus mengirimkan pesan tersebut lebih jauh dari server ke klien.

  • 100 Lanjutkan - server puas dengan informasi awal tentang permintaan tersebut, klien dapat terus mengirimkan header. Diperkenalkan di HTTP/1.1.
  • 101 Switching Protocols - server menawarkan untuk beralih ke protokol yang lebih sesuai untuk sumber daya yang ditentukan; Server harus menunjukkan daftar protokol yang diusulkan di bidang Perbarui header. Jika klien tertarik dengan hal ini, maka dia mengirimkan permintaan baru yang menunjukkan protokol lain. Diperkenalkan di HTTP/1.1.
  • 102 Memproses - permintaan telah diterima, namun memerlukan waktu lama untuk diproses. Digunakan oleh server untuk mencegah klien memutuskan koneksi karena waktu habis. Setelah menerima respon seperti itu, klien harus mereset timer dan menunggu perintah selanjutnya seperti biasa. Muncul di WebDAV.

Kesuksesan

Pesan kelas ini menginformasikan tentang kasus keberhasilan penerimaan dan pemrosesan permintaan klien. Tergantung pada statusnya, server juga dapat mengirimkan header dan isi pesan.

Pengalihan

Kode di kelas ini memberitahu klien bahwa agar operasi berhasil, permintaan lain harus dibuat, biasanya ke URI yang berbeda. Dari kelas ini, lima kode , , , dan berhubungan langsung dengan pengalihan. Server menentukan alamat tujuan klien harus membuat permintaan di header Lokasi. Namun, fragmen dalam URI target dapat digunakan.

Menurut standar terbaru, klien dapat melakukan pengalihan tanpa permintaan pengguna hanya jika sumber daya kedua diminta menggunakan metode GET atau HEAD. Spesifikasi sebelumnya menyatakan bahwa untuk menghindari perjalanan bolak-balik, pengguna harus ditanyai setelah pengalihan ke-5 berturut-turut. Untuk semua pengalihan, jika metode permintaannya bukan HEAD, maka pesan hypertext singkat dengan alamat target harus disertakan dalam isi respons sehingga jika terjadi kesalahan, pengguna dapat melakukan transisi sendiri.

Pengembang HTTP mencatat bahwa banyak klien, ketika mengalihkan dengan kode 301 dan 302, secara keliru menerapkan metode GET ke sumber daya kedua, meskipun faktanya permintaan ke sumber pertama dilakukan dengan metode yang berbeda (paling sering PUT). Untuk menghindari kesalahpahaman, kode 303 dan 307 diperkenalkan di HTTP/1.1 dan direkomendasikan untuk digunakan daripada 302. Anda hanya perlu mengubah metode jika server merespons dengan 303. Dalam kasus lain, buat permintaan berikutnya menggunakan metode asli.

Perilaku klien dengan berbagai pengalihan dijelaskan dalam tabel:

  • 300 Pilihan Ganda - untuk URI yang ditentukan, ada beberapa opsi untuk menyediakan sumber daya berdasarkan jenis MIME, bahasa, atau karakteristik lainnya. Server mengirimkan daftar alternatif dengan pesan, memungkinkan klien atau pengguna untuk membuat pilihan secara otomatis. Diperkenalkan di HTTP/1.0.
  • 301 Dipindahkan Secara Permanen - Dokumen yang diminta telah dipindahkan secara permanen ke URI baru yang ditentukan di bidang Lokasi pada header. Beberapa klien berperilaku salah saat memproses kode ini. Diperkenalkan di HTTP/1.0.
  • 302 Ditemukan, 302 Dipindahkan Sementara - dokumen yang diminta tersedia sementara di URI lain yang ditentukan dalam header di bidang Lokasi. Kode ini dapat digunakan, misalnya, dalam negosiasi konten berbasis server. Beberapa klien berperilaku salah saat memproses kode ini. Diperkenalkan di HTTP/1.0.
  • 303 Lihat Lainnya - dokumen pada URI yang diminta harus diminta ke alamat di bidang Lokasi header menggunakan metode GET, meskipun yang pertama diminta menggunakan metode yang berbeda. Kode ini diperkenalkan bersama dengan 307 untuk menghindari ambiguitas, sehingga server dapat yakin bahwa sumber daya berikutnya akan diminta menggunakan metode GET. Misalnya, halaman web memiliki kolom input teks untuk navigasi dan pencarian cepat. Setelah memasukkan data, browser membuat permintaan menggunakan metode POST, termasuk teks yang dimasukkan di badan pesan. Jika dokumen dengan nama yang dimasukkan terdeteksi, server merespons dengan kode 303, yang menunjukkan alamat permanennya di header Lokasi. Maka browser dijamin akan memintanya menggunakan metode GET untuk mendapatkan kontennya. Jika tidak, server hanya akan mengembalikan halaman hasil pencarian ke klien. Diperkenalkan di HTTP/1.1.
  • 304 Not Modified - server mengembalikan kode ini jika klien meminta dokumen menggunakan metode GET, menggunakan header If-Modified- Since atau If-None-Match dan dokumen tidak berubah sejak saat yang ditentukan. Dalam hal ini, pesan server tidak boleh berisi isi. Diperkenalkan di HTTP/1.0.
  • 305 Gunakan Proxy - permintaan ke sumber daya yang diminta harus dilakukan melalui server proxy, yang URI-nya ditentukan di bidang Lokasi pada header. Kode respons ini hanya dapat digunakan oleh server HTTP asal (bukan proxy). Diperkenalkan di HTTP/1.1.
  • 306 (dipesan) - kode respons yang digunakan sebelumnya saat ini dicadangkan. Disebutkan dalam RFC 2616 (pembaruan HTTP/1.1).
  • 307 Pengalihan Sementara - sumber daya yang diminta tersedia untuk waktu singkat di URI lain yang ditentukan di bidang Lokasi pada header. Kode ini diperkenalkan bersama dengan 303, bukan 302, untuk menghindari ambiguitas. Diperkenalkan di RFC 2616 (pembaruan HTTP/1.1).

Kesalahan klien

Kelas kode 4xx dimaksudkan untuk menunjukkan kesalahan di sisi klien. Saat menggunakan semua metode kecuali HEAD, server harus mengembalikan penjelasan hypertext kepada pengguna di isi pesan.

  • 400 Permintaan Buruk - server mendeteksi kesalahan sintaksis dalam permintaan klien. Diperkenalkan di HTTP/1.0.
  • 401 Tidak Sah - permintaan memerlukan identifikasi pengguna. Server harus meminta nama pengguna dan kata sandi dari pengguna, dan pengguna akan meneruskannya di header WWW-Otentikasi pada permintaan berikutnya. Jika data yang ditentukan salah, server akan mengembalikan status yang sama lagi. Diperkenalkan di HTTP/1.0.
  • 402 Pembayaran Diperlukan - dimaksudkan untuk digunakan di masa depan. Saat ini tidak digunakan. Kode ini ditujukan untuk layanan pengguna berbayar dan bukan untuk perusahaan hosting. Artinya kesalahan ini tidak akan dikeluarkan oleh penyedia hosting jika terjadi keterlambatan pembayaran atas layanannya. Dicadangkan sejak HTTP/1.1.

Server mengembalikan kesalahan 403 ketika mencoba melihat direktori “cgi-bin”, yang aksesnya ditolak.

  • 403 Terlarang - server memahami permintaan tersebut, tetapi menolak untuk memenuhinya karena pembatasan akses klien ke sumber daya yang ditentukan. Jika otentikasi menggunakan HTTP diperlukan untuk mengakses sumber daya, server akan mengembalikan respons atau jika proxy digunakan. Jika tidak, batasannya ditetapkan oleh administrator server atau pengembang aplikasi web dan dapat berupa apa saja tergantung pada kemampuan perangkat lunak yang digunakan. Bagaimanapun, klien harus diberitahu tentang alasan penolakan untuk memproses permintaan tersebut. Alasan yang paling mungkin untuk pembatasan ini mungkin merupakan upaya untuk mengakses sumber daya sistem server web (misalnya, file .htaccess atau .htpasswd) atau file yang ditolak aksesnya menggunakan file konfigurasi, persyaratan untuk otentikasi non-HTTP, misalnya , untuk mengakses manajemen konten sistem atau bagian untuk pengguna terdaftar, atau server tidak puas dengan alamat IP klien, misalnya saat memblokir. Diperkenalkan di HTTP/1.0.
  • 404 Not Found adalah kesalahan paling umum saat menggunakan Internet, alasan utamanya adalah kesalahan ejaan alamat halaman Web. Server memahami permintaan tersebut, tetapi tidak menemukan sumber daya yang sesuai pada URI yang ditentukan. Jika server mengetahui bahwa ada dokumen di alamat ini, maka disarankan untuk menggunakan kode tersebut. Respons 404 dapat digunakan jika Anda perlu menyembunyikan sumber daya tertentu secara hati-hati dari pengintaian. Diperkenalkan di HTTP/1.0.
  • 405 Metode Tidak Diizinkan - metode yang ditentukan oleh klien tidak dapat diterapkan pada sumber daya saat ini. Sebagai tanggapan, server harus menunjukkan metode yang tersedia di header Izinkan, dipisahkan dengan koma. Server harus mengembalikan kesalahan ini jika metode tersebut diketahuinya, tetapi tidak berlaku secara khusus untuk sumber daya yang ditentukan dalam permintaan; jika metode yang ditentukan tidak berlaku di seluruh server, maka klien perlu mengembalikan kode tersebut. Diperkenalkan di HTTP/1.1.
  • 406 Not Acceptable - URI yang diminta tidak dapat memenuhi karakteristik yang diteruskan di header. Jika metodenya bukan HEAD , maka server harus mengembalikan daftar karakteristik yang dapat diterima untuk sumber daya tertentu. Diperkenalkan di HTTP/1.1.
  • 407 Diperlukan Otentikasi Proxy - responsnya mirip dengan kode kecuali otentikasi dilakukan untuk server proxy. Mekanismenya mirip dengan identifikasi pada original server. Diperkenalkan di HTTP/1.1.
  • 408 Request Timeout - waktu tunggu server untuk transmisi dari klien telah habis. Klien dapat mengulangi permintaan serupa sebelumnya kapan saja. Misalnya, situasi ini mungkin muncul ketika mengunggah file besar ke server menggunakan metode POST atau PUT. Pada titik tertentu selama transfer, sumber data berhenti merespons, misalnya karena kerusakan pada CD atau hilangnya komunikasi dengan komputer lain di jaringan lokal. Sampai klien mengirimkan apa pun, menunggu tanggapan darinya, koneksi dengan server tetap terjaga. Setelah beberapa waktu, server mungkin menutup koneksi untuk memungkinkan klien lain membuat permintaan. Respons ini tidak dikembalikan ketika klien secara paksa menghentikan transmisi atas perintah pengguna atau koneksi terputus karena alasan lain, karena respons tidak dapat dikirim lagi. Diperkenalkan di HTTP/1.1.
  • 409 Konflik - permintaan tidak dapat diselesaikan karena konflik akses ke sumber daya. Hal ini dimungkinkan, misalnya, ketika dua klien mencoba mengubah sumber daya menggunakan metode PUT.
  • 410 Hilang - server mengirimkan respons ini jika sumber daya dulunya berada di URL yang ditentukan, namun telah dihapus dan sekarang tidak tersedia. Dalam hal ini, server tidak mengetahui lokasi dokumen alternatif, misalnya salinan). Jika server mencurigai bahwa dokumen tersebut dapat dipulihkan dalam waktu dekat, lebih baik meneruskan kode tersebut ke klien. Diperkenalkan di HTTP/1.1.
  • 411 Panjang Diperlukan - Untuk sumber daya yang ditentukan, klien harus menentukan Panjang Konten di header permintaan. Tanpa menentukan kolom ini, Anda tidak boleh mencoba lagi permintaan ke server menggunakan URI ini. Respons ini wajar untuk permintaan seperti POST dan PUT. Misalnya, jika file diunduh menggunakan URI yang ditentukan, dan server memiliki batasan ukurannya. Maka akan lebih masuk akal untuk memeriksa header Content-Length di awal dan segera menolak pengunduhan, daripada memicu beban yang tidak berarti dengan memutus koneksi ketika klien benar-benar mengirimkan pesan yang terlalu besar. Diperkenalkan di HTTP/1.1.
  • 412 Prakondisi Gagal - dikembalikan jika tidak ada kolom header bersyarat [ istilah yang tidak diketahui] permintaan itu tidak dipenuhi. Diperkenalkan di HTTP/1.1.
  • 413 Entitas Permintaan Terlalu Besar - dikembalikan jika server menolak memproses permintaan karena ukuran badan permintaan terlalu besar. Server mungkin menutup koneksi untuk menghentikan transmisi permintaan lebih lanjut. Jika masalah bersifat sementara, disarankan untuk menyertakan header Retry-After dalam respons server yang menunjukkan waktu setelah permintaan serupa dapat diulang. Diperkenalkan di HTTP/1.1.
  • 414 URL Permintaan Terlalu Panjang - server tidak dapat memproses permintaan karena URL yang ditentukan terlalu panjang. Kesalahan ini dapat dipicu, misalnya, ketika klien mencoba meneruskan parameter panjang melalui metode GET, bukan metode POST. Diperkenalkan di HTTP/1.1.
  • 415 Tipe Media Tidak Didukung - karena alasan tertentu server menolak bekerja dengan tipe data yang ditentukan menggunakan metode ini. Diperkenalkan di HTTP/1.1.
  • 416 Rentang yang Diminta Tidak Dapat Dipuaskan - bidang Rentang pada header permintaan menentukan rentang di luar sumber daya dan bidang Jika-Rentang tidak ada. Jika klien melewati rentang byte, maka server dapat mengembalikan ukuran sebenarnya di bidang Content-Range pada header. Jawaban ini tidak boleh digunakan ketika meneruskan tipe multipart/byteranges. Diperkenalkan di RFC 2616 (pembaruan HTTP/1.1).
  • 417 Ekspektasi Gagal - karena alasan tertentu server tidak dapat memenuhi nilai bidang Harapkan di header permintaan. Diperkenalkan di RFC 2616 (pembaruan HTTP/1.1).
  • 422 Entitas yang Tidak Dapat Diproses - server berhasil menerima permintaan, dapat bekerja dengan tipe data yang ditentukan, dokumen XML di badan permintaan memiliki sintaks yang benar, tetapi ada beberapa jenis kesalahan logis yang tidak mungkin dilakukan operasi pada sumber daya. Diperkenalkan di WebDAV.
  • 423 Terkunci - sumber daya target dari permintaan diblokir agar tidak menerapkan metode yang ditentukan padanya. Diperkenalkan di WebDAV.
  • 424 Ketergantungan Gagal - Implementasi permintaan saat ini mungkin bergantung pada keberhasilan operasi lain. Jika tidak selesai dan karena itu permintaan saat ini tidak dapat diselesaikan, maka server akan mengembalikan kode ini. Diperkenalkan di WebDAV.
  • 425 Koleksi Tidak Terurut - dikirim jika klien mengirim permintaan, dengan menunjukkan posisi dalam koleksi yang tidak disortir atau dengan menggunakan urutan elemen yang berbeda dari milik server [menentukan] . Diperkenalkan dalam draf oleh Protokol Koleksi Lanjutan WebDAV .
  • 426 Diperlukan Peningkatan - server menunjukkan kepada klien perlunya memperbarui protokol. Header respons harus berisi bidang Peningkatan dan Koneksi yang disusun dengan baik. Diperkenalkan di RFC 2817 untuk memungkinkan transisi ke TLS melalui HTTP.
  • 449 Coba Lagi Dengan - dikembalikan oleh server jika informasi yang diterima dari klien tidak mencukupi untuk memproses permintaan. Dalam hal ini, bidang Ms-Echo-Request ditempatkan di header respons. Diperkenalkan oleh korporasi Microsoft Untuk WebDAV. Saat ini setidaknya digunakan oleh program Uang Microsoft.
  • 456 Kesalahan Tidak Dapat Dipulihkan - dikembalikan oleh server jika pemrosesan permintaan menyebabkan kegagalan yang tidak dapat dipulihkan dalam tabel database. Diperkenalkan oleh korporasi Microsoft Untuk WebDAV.

Kesalahan server

Kode 5xx dialokasikan untuk kasus operasi yang gagal karena kesalahan server. Untuk semua situasi selain menggunakan metode HEAD, server harus menyertakan penjelasan di badan pesan yang akan ditampilkan klien kepada pengguna.

Lihat juga

Catatan

Tautan

Dokumen dasar pada protokol HTTP (dalam urutan tanggal publikasi):

  • Registri Kode Status Hypertext Transfer Protocol (HTTP). IANA (17 Oktober 2007). - daftar kode status HTTP. Diarsipkan dari versi asli tanggal 17 Februari 2012. Diakses tanggal 30 Juli 2009.
  • RFC 2616 Draf standar " " (Bahasa Inggris) (Rusia) ); IETF, Juni 1999; Fielding Roy (Bahasa inggris) Rusia (UC Irvine (Bahasa inggris) Rusia ), Getty Jim (Bahasa inggris) Rusia (Compaq /W3C), Mogul J. (Compaq), Frystyk Henrik (Bahasa inggris) Rusia (MIT /W3C), Masinter L. (Xerox), Leach P. (Microsoft), Berners-Lee Tim (W3C /MIT)- pembaruan protokol HTTP versi 1.1.
  • RFC 2068 Usulan standar “Hypertext Transfer Protocol - HTTP/1.1” (Bahasa Inggris) (Rusia) "Protokol Transfer Hiperteks - HTTP/1.1"); IETF, Januari 1997; Fielding Roy (Bahasa inggris) Rusia (UC Irvine (Bahasa inggris) Rusia ), Getty Jim (Bahasa inggris) Rusia (DEC), Mogul J. (DEC), Frystyk Henrik (Bahasa inggris) Rusia (MIT/LCS), Berners-Lee Tim (MIT/LCS)- spesifikasi awal untuk HTTP versi 1.1.
  • Informasi RFC 1945 "

Halo, pembaca situs blog! Mari kita lanjutkan mengenal protokol HTTP di bagian Server dan protokol dan bagian protokol HTTP-nya. Posting ini sepenuhnya didedikasikan untuk kesalahan klien. Kami akan melihatnya bersama Anda Kode kesalahan klien HTTP. Secara umum, kode kesalahan klien dapat diperluas oleh server mana pun; kami hanya akan mempertimbangkan kode kesalahan klien yang tercantum dalam . Pertama, seperti biasa saat meninjau kode protokol HTTP, kami akan memberikan gambaran umum tentang kode kesalahan klien, dan kemudian mempertimbangkan masing-masing dari 18 kode tersebut satu per satu. Kode kesalahan klien HTTP.

Informasi umum tentang kode kesalahan klien HTTP

Mereka memberi tahu pengguna bahwa dia tidak dapat memperoleh sumber daya yang diminta yang ditentukan dalam URI (catatan tentang), karena kesalahan dirinya sendiri, misalnya pengguna melakukan kesalahan saat memasukkan URL di browser, dalam hal ini server akan merespons dengan kode status 404 Kode kesalahan klien HTTP mulai dengan empat. selalu mengirimkan penjelasan mengapa kesalahan terjadi beserta kode status jika terjadi kesalahan klien, kecuali .

Untuk memudahkan pertimbangan, mari kita rangkum semuanya dalam satu tabel Kode kesalahan klien HTTP menjadi satu meja. Dan jangan lupa bahwa protokol HTTP didasarkan pada model interaksi klien-server, yang membagi tanggung jawab aplikasi menjadi tanggung jawab klien dan server, protokol yang dimaksud cukup ketat mengikuti model ini, dan kami memiliki kode kesalahan khusus yang terjadi karena karena kesalahan aplikasi server dan merupakan kode kesalahan yang terjadi karena kesalahan seseorang atau aplikasi klien yang digunakan seseorang.

Kode kesalahan klien HTTP Deskripsi kode kesalahan klien HTTP
400 Permintaan Buruk Kode Status Kesalahan Klien HTTP 400: Permintaan Buruk Anda dapat melihat kode status kesalahan klien ini ketika permintaan Anda tidak dipahami karena kesalahan sintaksis di .
401 Tidak Sah Kode Status Kesalahan Klien HTTP 401: Tidak Diotorisasi Anda mungkin melihat kode status kesalahan klien ini jika akses ke sumber daya diperlukan karena alasan .
402 Pembayaran Diperlukan Kode Status Kesalahan Klien HTTP 402: Diperlukan Pembayaran Kode status kesalahan klien ini saat ini tidak digunakan, ini ditujukan untuk layanan berbayar, dan bukan untuk hosting dan penyedia Internet.
403 Dilarang Kode Status Kesalahan Klien HTTP 403: Dilarang Anda akan melihat kode status kesalahan klien ini ketika server memahami Anda dengan sempurna, tetapi menolak memberi Anda akses ke sumber daya karena Anda tidak memiliki hak akses yang memadai.
404 Tidak Ditemukan Kode Status Kesalahan Klien HTTP 404: Tidak Ditemukan Kode status kesalahan klien paling populer. Anda bisa melihatnya ketika Anda melakukan kesalahan saat memasukkan URL di browser.
Metode 405 Tidak Diizinkan Kode status kesalahan klien HTTP 405: Metode tidak diizinkan Kode status kesalahan klien ini dapat dilihat ketika Anda menggunakan metode permintaan yang dilarang dalam pengaturan server HTTP.
406 Tidak Dapat Diterima Kode Status Kesalahan Klien HTTP 406: Tidak Dapat Diterima Anda akan melihat kode status ini ketika klien Anda berisi parameter yang tidak valid untuk URI yang ditentukan di dalamnya.
407 Diperlukan Otentikasi Proksi Kode Status Kesalahan Klien HTTP 407: Diperlukan Otentikasi Proksi Jika Anda melihat kode status kesalahan klien ini, maka Anda perlu mengautentikasi ke server proxy.
408 Batas Waktu Permintaan Kode Status Kesalahan Klien HTTP 408: Waktu Permintaan Habis Anda akan melihat kode status kesalahan klien HTTP ini ketika server lelah menunggu pesan dari Anda.
409 Konflik Kode Status Kesalahan Klien HTTP 409: Konflik Kode status kesalahan klien ini akan sangat jarang muncul ketika ada aktivitas yang saling bertentangan antara dua pengguna.
410 Hilang Kode Status Kesalahan Klien HTTP 410: Dihapus Dan kode status kesalahan klien ini akan ditampilkan oleh server jika sumber daya tersedia pada URI yang ditentukan, tetapi sekarang tidak ada.
411 Panjang Diperlukan Kode Status Kesalahan Klien HTTP 411: Diperlukan panjang Kode status kesalahan klien ini terjadi ketika server harus menentukan
412 Prasyarat Gagal Kode Status Kesalahan Klien HTTP 412: Prasyarat tidak valid Server akan kembali dengan kode status ini ketika tidak dapat memenuhi persyaratan apa pun dari permintaan klien.
413 Entitas Permintaan Terlalu Besar Kode Status Kesalahan Klien HTTP 413: Objek Permintaan Terlalu Besar

Dan kode kesalahan klien seperti itu dapat dilihat ketika isi permintaan () terlalu besar dan server tidak dapat menerimanya.

414 URL Permintaan Terlalu Panjang Kode status kesalahan klien HTTP 414:URI permintaan terlalu panjang Server akan mengeluarkan kode kesalahan klien ini jika URI permintaan terlalu panjang.
415 Jenis Media yang Tidak Didukung Kode status kesalahan klien HTTP 415: Jenis media tidak didukung Server dapat mengeluarkan kode status kesalahan klien jika tidak ingin bekerja dengan tipe data yang ditentukan () dengan metode yang ditentukan dalam permintaan klien
416 Rentang yang Diminta Tidak Memuaskan Kode Status Kesalahan Klien HTTP 416: Rentang yang diminta tidak dapat dijangkau Kode ini dan kesalahan klien memberi tahu kami bahwa rentang fragmen () di bidang header Rentang tidak ditentukan dengan benar.
417 Ekspektasi Gagal Kode status kesalahan klien HTTP 417: Yang diharapkan tidak dapat diterima Kode status kesalahan klien 417 akan terjadi jika server tidak dapat memenuhi nilai yang ditentukan di kolom Expect header.

Kode Kesalahan HTTP 400, Kode Kesalahan 401, Kode Kesalahan Klien 402, Kode Kesalahan 403, Kode Kesalahan Klien HTTP 404, Kesalahan Klien 405

Kode kesalahan klien HTTP 400: Permintaan Buruk atau permintaan tidak valid. Server akan mengembalikan respons dengan kode kesalahan 400 ketika mendeteksi bahwa permintaan HTTP klien berisi kesalahan sintaksis.

Kode kesalahan klien HTTP 401: Tidak sah atau tidak diizinkan. Server mengirimkan kode kesalahan klien 401 ketika otorisasi diperlukan untuk mengakses sumber daya, sedangkan respons server HTTP harus (baca tentang) menyertakan bidang header WWW-Otentikasi dan daftar kondisi untuk otentikasi klien, setelah itu klien dapat mengulangi permintaan ke server dengan bidang Otorisasi, yang akan berisi semua data yang diperlukan untuk otorisasi.

Kode kesalahan klien HTTP 402: Diperlukan Pembayaran atau pembayaran diperlukan. Kode kesalahan klien ini dicadangkan untuk penggunaan di masa mendatang dan dimaksudkan untuk memperingatkan klien bahwa mereka harus melakukan pembayaran untuk mengakses sumber daya. Harap diperhatikan: kode kesalahan klien ini tidak digunakan oleh perusahaan hosting, toko online, atau bahkan penyedia Internet.

Kode kesalahan klien HTTP 403: Dilarang atau dilarang. Kode kesalahan klien HTTP 403 dikirim oleh server ketika menolak memenuhi permintaan Anda, karena berbagai alasan. Dalam hal ini, server tidak harus menunjukkan apakah tindakan ini bersifat sementara atau permanen. Salah satu alasan munculnya kode HTTP 403 mungkin karena pengguna tidak memiliki hak akses yang cukup terhadap sumber daya.

Kode kesalahan klien HTTP 404: Tidak Ditemukan atau tidak ditemukan. Kode kesalahan klien HTTP 404 adalah kode kesalahan klien yang paling populer; mungkin semua orang pernah melihat kode kesalahan 404. Lagi pula, untuk melihat kode error 404, Anda hanya perlu memasukkan URL yang salah.

Kode kesalahan klien HTTP 405: Metode Tidak Diizinkan atau metode tersebut tidak diperbolehkan. Server mengirimkan kode kesalahan 405 ke klien ketika metode yang ditentukan dalam permintaan klien tidak dapat diterapkan ke sumber daya yang ditentukan dalam URI. Kode kesalahan 405 muncul terutama karena konfigurasi keamanan server, ketika administrator dengan sengaja melarang pelaksanaan metode permintaan HTTP tertentu di server. Dalam hal ini, respons server dengan kode kesalahan 405 harus berisi kolom Izinkan header, yang akan menunjukkan metode yang tersedia untuk sumber daya.

Kode kesalahan HTTP 406, kode kesalahan 407, kode kesalahan klien HTTP 408, kode respons server 409, kode kesalahan 410, kode kesalahan klien 411, kode HTTP 412

Kode kesalahan klien HTTP 406: Tidak Dapat Diterima atau tidak dapat diterima. Kode kesalahan 406 memberi tahu klien bahwa URI yang dimasukkan tidak dapat diterima dengan karakteristik yang ditentukan di header HTTP (baca tentang ). Jika metode permintaan selain metode HEAD, maka server perlu menyertakan daftar karakteristik yang tersedia untuk URI yang diberikan di badan pesan. Format objek HTTP ditentukan oleh jenis media di bidang header Panjang Konten dan, bergantung pada klien dan kemampuannya, opsi permintaan yang sesuai dapat dipilih secara otomatis; kode ini digunakan ketika .

Kode kesalahan klien HTTP 407: Diperlukan Otentikasi Proksi atau memerlukan otentikasi melalui server proxy. Kode kesalahan klien HTTP 407 akan muncul ketika klien perlu mengotorisasi pada server proxy untuk mengakses sumber daya yang ditentukan. Ketika kode kesalahan 407 ditemukan, proksi harus mengembalikan bidang header Proxy-Authenticate yang berisi tantangan yang digunakan proksi untuk sumber daya yang diminta. Kode kesalahan 407 serupa efeknya dengan kode 401.

Kode kesalahan klien HTTP 408: Batas Waktu Permintaan atau waktu permintaan habis. Kode kesalahan 408 terjadi ketika klien belum membuat permintaan dalam waktu yang diinginkan server untuk menunggu, tetapi klien dapat mencoba kembali permintaan tersebut.

Kode kesalahan klien HTTP 409: Konflik atau konflik. Kode kesalahan klien 409 terjadi ketika ada konflik antara beberapa klien yang mengakses sumber daya yang sama. Kode kesalahan 409 hanya ditampilkan kepada klien ketika klien dapat menyelesaikan konflik dan mencoba kembali permintaan tersebut. Respons HTTP server harus memberikan informasi sebanyak mungkin kepada pengguna untuk menyelesaikan konflik dan kode 409 tidak akan muncul lagi. Paling sering, kesalahan 409 muncul saat menggunakan metode PUT.

Kode kesalahan klien HTTP 410: Hilang atau dihapus. Kode kesalahan klien HTTP 410 akan dikirim oleh server ketika sumber daya telah dihapus dan server tidak tahu di mana harus mencari salinan sumber daya atau versi barunya. Jika server memiliki informasi bahwa sumber daya dapat dipulihkan, server tidak akan menampilkan kesalahan 410, melainkan menampilkan kode kesalahan 404.

Kode kesalahan klien HTTP 411: Diperlukan Panjang atau panjang yang diperlukan. Kode kesalahan 411 akan ditampilkan kepada klien ketika server memerlukan panjang konten untuk memproses permintaan dengan benar. Klien dapat mencoba kembali permintaan tersebut jika menambahkan bidang header Panjang Konten yang valid yang berisi panjang badan pesan dari pesan permintaan.

Kode kesalahan klien HTTP 412: Prakondisi Gagal atau prasyaratnya salah. Kode kesalahan 412 akan dikirimkan ke klien oleh server ketika server tidak dapat memenuhi kondisi yang ditentukan dalam header permintaan HTTP.

Kode kesalahan klien HTTP 413, kode kesalahan klien 414, kesalahan klien 415, kesalahan 416, kode HTTP 417

Kode kesalahan klien HTTP 413: Entitas Permintaan Terlalu Besar atau objek permintaan terlalu besar. Kode kesalahan 413 muncul ketika objek yang dikirim dalam permintaan klien terlalu besar dan server tidak dapat memprosesnya. Server mungkin menutup koneksi (ditulis di sini) untuk mencegah klien melanjutkan permintaan. Jika situasi ini bersifat sementara, maka server dalam pesannya, bersama dengan kode kesalahan 413, mengirimkan kolom header Retry-After, yang menunjukkan waktu setelah permintaan dapat diulang.

Kode kesalahan klien HTTP 414: Permintaan-URI Terlalu Panjang atau permintaannya terlalu panjang. Server mengirimkan pesan dengan kode kesalahan 414 ketika URI yang ditentukan dalam permintaan terlalu panjang. Error 414 biasanya terjadi ketika klien mencoba meneruskan sekumpulan parameter menggunakan metode GET, padahal seharusnya metode POST digunakan.

Kode kesalahan klien HTTP 415: Jenis Media Tidak Didukung atau jenis media yang tidak didukung. Server mengirimkan kode kesalahan 415 ketika menolak melayani permintaan karena tipe data yang salah untuk sumber daya yang ditentukan dalam URI: ketika metode yang dipilih dalam permintaan tidak cocok dengan tipe data sumber daya.

Kode kesalahan klien HTTP 416: Rentang yang Diminta Tidak Dapat Dipuaskan atau rentang yang diminta tidak dapat dijangkau. Server akan mengirimkan pesan dengan kode kesalahan 416 jika rentang fragmen yang salah ditentukan di bidang header permintaan Rentang, yang berisi deskripsi lengkap semua kode.

Jangan lupa untuk membagikan pendapat Anda di komentar dan meninggalkan umpan balik, ini akan membantu membuat pekerjaan kami lebih baik, dengan hormat!

REST API menggunakan bilah status dalam respons HTTP untuk memberi tahu Klien tentang hasil permintaan.

HTTP mendefinisikan 40 kode status standar, yang dibagi menjadi lima kategori. Hanya kode status yang digunakan di REST API yang disorot di bawah.

Kode Status di REST

200 (Oke)

Permintaan berhasil diselesaikan. Informasi yang dikembalikan bersama respons bergantung pada metode yang digunakan dalam permintaan, misalnya ketika:

  • GET Sebuah objek yang sesuai dengan sumber daya yang diminta telah diterima.
  • HEAD Bidang header yang sesuai dengan sumber daya yang diminta telah diterima, tetapi isi responsnya kosong.
  • POST Tindakan yang diminta telah selesai.

201 (Dibuat)

REST API merespons dengan kode status 201 setiap kali sumber daya dibuat dalam koleksi. Mungkin juga ada kasus di mana sumber daya baru dibuat sebagai hasil dari beberapa tindakan pengontrol, dalam hal ini 201 juga merupakan respons yang tepat.

Server harus membuat sumber daya sebelum mengembalikan status 201. Jika hal ini tidak dapat segera dilakukan, maka server harus merespons dengan kode 202 (Diterima).

202 (Diterima)

Respons 202 biasanya digunakan untuk tindakan yang membutuhkan waktu lama untuk diproses dan tidak dapat diselesaikan dengan segera. Artinya permintaan telah diterima untuk diproses, namun pemrosesan belum selesai.

Tujuannya adalah untuk memungkinkan server menerima permintaan untuk beberapa proses lain (mungkin proses batch yang hanya berjalan sekali sehari) tanpa memerlukan koneksi agen pengguna ke server untuk bertahan hingga proses selesai.

Entitas yang dikembalikan dengan respons ini harus berisi indikasi status permintaan saat ini dan penunjuk ke monitor status (lokasi antrian pekerjaan) atau perkiraan kapan pengguna dapat mengharapkan permintaan selesai.

204 (Tanpa Konten - Tanpa konten)

Kode status 204 biasanya dikirim sebagai respons terhadap permintaan PUT, POST, atau DELETE ketika REST API menolak mengirim kembali pesan status kemajuan apa pun.

API juga dapat mengirimkan status 204 sebagai respons terhadap permintaan GET untuk menunjukkan bahwa sumber daya yang diminta ada tetapi tidak memiliki data untuk ditambahkan ke isi respons.

Respons 204 tidak boleh berisi isi pesan dan karenanya selalu diakhiri dengan baris kosong pertama setelah kolom header.

301 (Dipindahkan Secara Permanen)

Kode pengalihan. Menunjukkan bahwa model sumber daya REST API telah banyak berubah dan sekarang memiliki URL baru. Rest API harus menentukan URI baru di header respons Lokasi, dan semua permintaan di masa mendatang harus diarahkan ke URI yang ditentukan.

Kemungkinan besar Anda tidak akan menggunakan kode respons ini di API Anda, karena Anda selalu dapat menggunakan versi API untuk API baru sambil tetap mempertahankan versi lama.

302 (Ditemukan - Ditemukan)

Ini adalah cara umum untuk mengalihkan ke URL lain. Respons HTTP dengan kode ini juga harus menyediakan URL tujuan pengalihan di bidang Header lokasi. Agen pengguna (seperti browser) diminta dalam respons dengan kode ini untuk membuat permintaan kedua ke URL baru.

Banyak browser yang menerapkan kode ini dengan cara yang melanggar standar. Mereka mulai mengubah jenis permintaan asli, misalnya dari POST menjadi GET. Kode status 303 dan 307 ditambahkan untuk server yang ingin menentukan secara unik respons apa yang diharapkan dari klien.

Respons 303 menunjukkan bahwa sumber daya pengontrol telah menyelesaikan tugasnya, namun alih-alih mengirimkan isi respons yang tidak diinginkan, ia mengirimkan URI sumber daya ke klien. Ini bisa berupa URI pesan status sumber daya sementara atau URI sumber daya persisten yang sudah ada.

Kode status 303 memungkinkan REST API memberikan referensi ke sumber daya tanpa memaksa klien mengunduh respons. Sebaliknya, klien dapat mengirimkan permintaan GET ke URL yang ditentukan di header Lokasi.

Respons 303 tidak boleh di-cache, namun respons terhadap permintaan kedua (yang dialihkan) mungkin dapat di-cache.

304 (Tidak Dimodifikasi)

Kode status ini mirip dengan 204 (Tanpa Konten) karena isi respons harus kosong. Perbedaan utamanya adalah 204 digunakan ketika tidak ada apa pun yang dikirim dalam isi, sedangkan 304 digunakan ketika sumber daya belum diubah dari versi yang ditunjukkan oleh header permintaan If-Modified- Since atau If-None-Match.

Dalam kasus seperti ini, tidak perlu mengirimkan ulang sumber daya karena klien masih memiliki salinan yang diunduh sebelumnya.

Semua ini menghemat sumber daya klien dan server, karena hanya header yang perlu dikirim dan diterima, dan server tidak perlu membuat konten lagi dan klien tidak perlu menerimanya.

307 (Pengalihan Sementara - Pengalihan sementara)

Respons 307 menunjukkan bahwa API lainnya tidak akan memproses permintaan klien. Sebaliknya, klien harus mengirim ulang permintaan ke URL yang ditentukan di header Lokasi. Namun, permintaan selanjutnya ke klien harus tetap menggunakan URL asli.

Rest API dapat menggunakan kode status ini untuk menetapkan URL sementara ke sumber daya yang diminta.

Jika metode permintaan bukan HEAD, isi respons harus berisi catatan singkat dengan hyperlink ke URL baru. Jika kode 307 diterima sebagai respons terhadap permintaan selain GET atau HEAD, Klien tidak boleh mengalihkan permintaan secara otomatis jika tidak dapat dikonfirmasi oleh Klien, karena hal ini dapat mengubah kondisi saat permintaan dibuat.

400 (Permintaan Buruk - Permintaan Buruk)

Ini adalah status kesalahan umum di sisi Klien. Digunakan ketika tidak ada kode kesalahan 4xx lain yang sesuai. Kesalahan dapat berupa sintaks permintaan yang salah, parameter permintaan yang tidak valid, permintaan atau router yang menyesatkan, dll.

Klien tidak boleh mengulangi permintaan yang sama persis.

401 (Tidak Sah)

Pesan kesalahan 401 menunjukkan bahwa klien mencoba mengakses sumber daya pribadi tanpa memberikan kredensial otorisasi. Dia mungkin memberikan kredensial yang salah atau tidak sama sekali. Responsnya harus menyertakan kolom header WWW-Authenticate yang berisi deskripsi masalah.

Klien dapat mengulangi permintaan tersebut dengan menentukan bidang otorisasi yang sesuai di header. Jika ini sudah dilakukan, respons 401 akan menunjukkan bahwa otorisasi untuk kredensial yang ditentukan tidak berfungsi. Jika respons 401 berisi masalah yang sama dengan respons sebelumnya, dan Klien telah melakukan setidaknya satu upaya autentikasi, maka pengguna Klien harus memberikan data yang diterima dalam respons kepada pemilik situs, karena dapat membantu mendiagnosis masalah.

403 (Dilarang)

Kesalahan 403 menunjukkan bahwa API lainnya menolak untuk memenuhi permintaan klien, mis. Klien tidak memiliki izin yang diperlukan untuk mengakses. Respons 403 bukanlah kasus yang memerlukan otorisasi (kode kesalahan otorisasi adalah 401).

Mencoba mengautentikasi tidak akan membantu, dan permintaan berulang kali tidak ada gunanya.

404 (Tidak Ditemukan)

Menunjukkan bahwa API lainnya tidak dapat mencocokkan URL klien dengan sumber daya, namun URL tersebut mungkin tersedia di masa mendatang. Permintaan klien selanjutnya dapat diterima.

404 tidak menunjukkan apakah kondisi tersebut bersifat sementara atau permanen. Kode ini digunakan untuk menunjukkan keadaan permanen 410 (Hilang). 410 digunakan jika server mengetahui bahwa sumber daya lama tidak tersedia secara permanen dan tidak lagi memiliki alamat.

405 (Metode Tidak Diizinkan)

API memunculkan kesalahan 405 ketika klien mencoba menggunakan metode HTTP yang tidak valid untuk sumber daya. Misalnya, metode PUT ditentukan, namun sumber daya tidak memiliki metode seperti itu.

Respons 405 harus menyertakan header Izinkan yang mencantumkan metode HTTP yang didukung, misalnya Izinkan: GET, POST.

406 (Tidak Dapat Diterima)

API tidak dapat menghasilkan tipe data pilihan klien yang ditentukan dalam header permintaan Terima. Misalnya, permintaan klien untuk data dalam format application/xml akan menerima respons 406 jika API hanya dapat mengembalikan data dalam format application/json.

Dalam kasus seperti ini, Klien harus menyelesaikan masalah data secara internal dan baru kemudian mengirim ulang permintaan.

412 (Prasyarat Gagal - Prasyarat gagal)

Ketika klien memberi tahu API lainnya untuk hanya memenuhi permintaan ketika kondisi tertentu terpenuhi, dan API tidak dapat memenuhi permintaan dalam kondisi tersebut, respons 412 dikembalikan.

415 (Jenis Media Tidak Didukung)

Pesan kesalahan 415 menunjukkan bahwa API tidak dapat memproses Tipe Media yang disediakan klien seperti yang ditentukan dalam header permintaan Tipe Konten.

Misalnya permintaan klien berisi data dalam format application/xml, namun API hanya siap memproses application/json . Dalam hal ini, klien akan menerima respons 415.

Misalnya, klien mengunggah gambar sebagai image/svg+xml, tetapi server mengharuskan gambar tersebut menggunakan format yang berbeda.

500 (Kesalahan Server Internal)

500 adalah respons umum ketika ada kesalahan pada kode API lainnya. Sebagian besar platform web secara otomatis merespons dengan kode status ini ketika terjadi kesalahan saat menjalankan kode penangan permintaan.

Kesalahan 500 tidak pernah terjadi pada klien, dan oleh karena itu masuk akal bagi klien untuk mengulangi permintaan yang sama persis yang memulai respons ini, dan berharap kali ini server akan merespons tanpa kesalahan.

Respons API 500 adalah respons kesalahan umum di server ketika tidak ada kode kesalahan lain yang sesuai.

501 (Tidak Diimplementasikan)

Server tidak mengenali metode permintaan dan tidak dapat memenuhi permintaan klien. Hal ini biasanya menyiratkan ketersediaan di masa mendatang (misalnya, fitur API layanan web baru).

Kami telah merilis buku baru, Pemasaran Konten Media Sosial: Cara Memahami Pikiran Pengikut Anda dan Membuat Mereka Jatuh Cinta dengan Merek Anda.

Berlangganan

Robot berkomunikasi satu sama lain. Tidak hanya di film blockbuster Jepang atau Hollywood, tapi saat ini, saat Anda membaca artikel ini. Hanya bahasa komunikasi mereka yang spesifik, dan Anda perlu memahaminya jika ingin mengetahui cara mengatur pekerjaan untuk meningkatkan situs. Untuk melakukan ini, Anda perlu mempelajari kode status. Untuk membantu Anda menavigasi tata bahasa, kami menerjemahkan dari Yoast tentang dasar-dasarnya.

Kode status HTTP seperti 404, 301, dan , hampir tidak menjadi masalah bagi pengguna, tetapi bagi SEO, kode tersebut sangat penting. Bot mesin pencari (seperti Googlebot) tidak hanya menggunakannya untuk menentukan kesehatan situs, kode status membantu mengetahui apa yang terjadi antara browser dan server. Beberapa menunjukkan kesalahan, seperti menandakan bahwa konten yang diminta tidak dapat ditemukan, sementara yang lain hanya menampilkan materi yang diminta. Pada artikel ini, kita akan melihat lebih dekat kode header HTTP yang paling penting dan apa artinya bagi SEO.

Apa itu kode status HTTP dan mengapa Anda melihatnya?

Kode status HTTP adalah pesan yang dikirim oleh server saat mengirimkan permintaan dari browser, yang menunjukkan apakah permintaan tersebut dapat diselesaikan atau tidak. Menurut spesifikasi resmi W3C, terdapat lusinan kode status, banyak di antaranya yang kemungkinan besar tidak akan Anda temui. Dan jika Anda menemukan ikhtisar lengkap tentang opsi yang memungkinkan, Anda dapat melihat HTTPstatuses.com.

Untuk memahami kode-kode ini, Anda perlu mengetahui bagaimana browser menerima halaman web.

Pengguna dapat mengakses situs web dengan dua cara - dengan mengetikkan URL situs atau dengan memasukkan kueri di bilah pencarian. Browser kemudian mengirimkan permintaan ke alamat IP situs untuk mengambil halaman web yang sesuai. Server merespons browser dengan mengirimkan kode status yang tertanam di header HTTP. Ketika semuanya baik-baik saja, kode header HTTP 200 dikirim kembali ke browser, bersama dengan konten yang diminta.

Namun, mungkin ada yang salah dengan konten atau server yang diminta. Misalnya, halaman tidak dapat ditemukan (yang mengembalikan kode kesalahan 404), atau ada masalah teknis sementara dengan server, yang mengakibatkan kode kesalahan server internal 500. Kode status HTTP ini merupakan alat penting untuk menilai kesehatan sebuah situs dan servernya. Jika sebuah situs secara teratur mengirimkan kode header HTTP yang salah ke mesin pencari, kontennya tidak akan diindeks, yang pada gilirannya akan menurunkan peringkatnya.

Berbagai kelas

Ada lima kelas rentang kode status HTTP yang menentukan berbagai jenis proses yang terjadi antara klien dan server. Mereka terlihat seperti ini:

  • 1xx – Menginformasikan tentang sesuatu.
  • 2xx – Melaporkan kesuksesan.
  • 3xx – Pemberitahuan pengalihan.
  • 4xx – Melaporkan kesalahan klien.
  • 5xx – Melaporkan kesalahan server.

Kode Status HTTP Paling Penting untuk SEO

Seperti yang telah kami katakan, daftar kodenya panjang, tetapi ada beberapa yang sangat penting bagi pengoptimal dan mereka yang bekerja sendiri dengan situs mereka. Mari kita buat daftar singkat yang harus Anda ketahui lebih baik daripada tabel perkalian:

200 : Oke / Sukses

Begini seharusnya: klien meminta konten dari server dan server merespons dengan pesan 200. Ini berarti permintaan berhasil - browser menerima konten yang memenuhi kebutuhan klien. Baik server maupun klien senang. Pengguna senang. Semua pesan kelas 2xx menunjukkan keberhasilan penyelesaian beberapa operasi.

301: Pindah secara permanen

Header HTTP 301 digunakan ketika URL yang diminta telah dipindahkan ke lokasi baru. Karena Anda bekerja dengan situs ini, Anda harus sering berurusan dengan kodenya - untuk mengalihkan URL lama ke yang baru, Anda pasti perlu melakukan pengalihan 301. Jika Anda tidak melakukan ini, pengguna akan melihat halaman dengan kode kesalahan (404) saat mereka membuka URL lama.

302: Ditemukan

Kode status HTTP 302 berarti konten target ditemukan tetapi berada di lokasi berbeda. Ini adalah kode status yang agak ambigu - tidak disebutkan apakah ini situasi sementara atau tidak. Hanya gunakan pengalihan 302 jika Anda ingin mengalihkan sementara URL ke sumber lain dan Anda yakin akan menggunakan URL tersebut lagi. Dengan kode ini, Anda memberi tahu mesin pencari bahwa URL tersebut akan digunakan, yang berarti jus tautan tidak akan terbawa ke URL baru. Oleh karena itu, jangan gunakan pengalihan 302 saat memindahkan domain atau membuat perubahan besar pada struktur situs.

307: Pengalihan sementara

Kode status 307 menggantikan 302 dalam spesifikasi HTTP1.1 dan dapat dianggap sebagai satu-satunya pengalihan yang sebenarnya. Anda dapat menggunakan 307 jika Anda perlu mengalihkan sementara URL ke yang baru, tanpa mengubah metode permintaan asli. 307 terlihat seperti 302, hanya saja 307 secara khusus mengkomunikasikan sifat sementara dari lokasi baru. Permintaan dapat berubah seiring waktu, sehingga klien harus terus menggunakan URL asli saat membuat permintaan baru.

403: Dilarang

403 memberitahu browser bahwa konten yang diminta tidak diperbolehkan untuk pengguna. Jika pengguna gagal memberikan kredensial login yang benar, konten akan tetap tidak tersedia.

404: Tidak ditemukan

Kode header HTTP 404 adalah salah satu yang paling penting. Ketika server merespons dengan kesalahan 404, Anda diberi tahu bahwa konten tersebut tidak ditemukan dan kemungkinan besar telah dihapus. Cobalah untuk tidak mengganggu pengunjung dengan pesan dengan kode ini, perbaiki kesalahan sesegera mungkin. Gunakan pengalihan untuk mengalihkan pengunjung situs dari URL lama ke artikel atau halaman baru yang memiliki konten terkait.

Pantau pesan 404 di antarmuka kesalahan Perayapan Google Search Console dan coba kurangi jumlahnya seminimal mungkin. Banyaknya kesalahan jenis ini dapat dianggap oleh Google sebagai tanda layanan yang buruk, dan ini akan mempengaruhi peringkat situs.

410: Dihapus

Hasil kode 410 sama dengan 404 - tidak ditemukan konten. Namun, dengan 410 Anda meminta mesin pencari untuk menghapus konten yang diminta. Jadi kode ini jauh lebih spesifik daripada 404. Dalam arti tertentu, Anda menginstruksikan mesin pencari untuk menghapus URL dari indeks. Sebelum Anda menghapus sesuatu secara permanen dari suatu situs, pertimbangkan apakah ada halaman yang setara di suatu tempat. Jika ya, alihkan. Jika tidak, halaman tersebut perlu dihapus atau diperbaiki.

451: Informasi tidak tersedia karena alasan hukum

Tambahan yang relatif baru. Kode status HTTP 451 menunjukkan bahwa konten yang diminta telah dihapus karena alasan hukum. Jika Anda menerima permintaan penghapusan, Anda perlu menggunakan kode ini untuk memberi tahu mesin telusur apa yang terjadi pada laman tersebut.

500: Kesalahan server internal

Kesalahan 500 adalah pesan bahwa server mengalami beberapa kondisi yang mencegahnya menyelesaikan permintaan, tanpa menunjukkan penyebabnya. Kesalahan dapat disebabkan oleh apa saja, misalnya kesalahan skrip di situs Anda. Periksa log server untuk melihat di mana masalahnya.

503: Layanan tidak tersedia

Server mengirimkan pesan ketika tidak dapat memproses permintaan karena kegagalan atau kelebihan beban. Gunakan kode ini kapan pun Anda memerlukan waktu henti sementara - misalnya, saat Anda melakukan pemeliharaan situs web. Dengan cara ini, perayap mesin pencari mengetahui bahwa situs Anda akan segera kembali online, dan mereka dapat kembali lagi nanti.

Bekerja dengan Kode Status HTTP

Kode HTTP adalah bagian penting dari pekerjaan pengoptimal. Anda akan menemukannya setiap hari, itulah mengapa penting untuk memahami arti dari kode-kode yang berbeda. Misalnya, saat menghapus halaman dari sebuah situs, penting untuk mengetahui perbedaan antara pengalihan 301 dan 410. Mereka memiliki tujuan yang berbeda dan oleh karena itu memberikan hasil yang berbeda.

Jika Anda ingin mengetahui jenis kode status yang dihasilkan situs Anda, masuklah ke Google Search Console. Di sini Anda akan menemukan halaman dengan kesalahan perayapan. Mereka harus ditemukan dan dihilangkan sebelum situs Anda dapat diindeks.

Kesimpulannya

Ingat kode-kode ini, saat bekerja dengan situs Anda akan melihat seberapa sering kode tersebut muncul. Mengetahui pengalihan mana yang akan digunakan dalam situasi tertentu, Anda dapat menyelamatkan situs Anda dari kerugian yang tidak perlu pada posisi peringkat. Melihat kesalahan perayapan di Google Search Console seharusnya cukup untuk memberi Anda gambaran bagus tentang apa yang terjadi.

Irina Vinnichenko

Pemasar Konten SEMANTICA

Pemilik situs ini adalah Michelangelo modern. Dia memiliki materi tak berbentuk, tujuan, dan mungkin selera serta keterampilan untuk melaksanakan proyek tersebut. Tetapi pemilik situs juga memiliki sesuatu yang tidak dimiliki oleh pematung - Google Search Console, yang memungkinkan Anda menemukan kesalahan secara tepat waktu dan menghilangkannya.

Bagaimana cara melakukan ini? Buka Google Search Console. Pergi ke " Perayapan > Kesalahan Perayapan. Di sana Anda dapat melihat apa yang terjadi dengan situs tersebut dan menyelesaikan masalah.

Pertama-tama, berurusan dengan tautan eksternal yang mengarah ke halaman tersebut. Google cenderung mengurutkan kesalahan berdasarkan kepentingannya. Kesalahan pada tautan eksternal diperlakukan sebagai prioritas. Untuk melihat dari mana link tersebut berasal, klik pada URL halaman 404. Di tab yang terbuka, pilih "Tertaut Dari" dan lihat tautan URL ke halaman tersebut. Pastikan semua halaman 404 dialihkan dengan pengalihan 301 ke URL yang relevan.

Anda perlu sering memeriksa kesalahan pada situs Anda. Lakukan ini setidaknya sebulan sekali.

Kode HTTP 404 sangat penting karena merupakan kode yang paling sering dilihat pengguna. Tujuan Anda adalah memberikan pengalaman pengguna terbaik, jadi pastikan untuk menata halaman dengan kode ini dengan benar.

Itu harus berisi:

  • Pemberitahuan bahwa pengguna telah membuka halaman yang tidak ada.
  • Jendela pencarian.
  • Navigasi sederhana yang dengannya pengguna akan memiliki akses ke apa yang ia cari.
  • Tautan ke halaman beranda.

Selain itu, lebih baik mendesain halaman secara visual. Desain yang tidak biasa akan membantu pengguna tetap berada di situs. tentang bagaimana melakukannya dengan benar dan indah

  • Sergei Savenkov

    semacam ulasan "pendek"... seolah-olah mereka sedang terburu-buru di suatu tempat