506

Variant Also Negotiates

Resmi
Titik akhir bernegosiasi sendiri

Penjelasan umum tentang kode status 506

Kode status HTTP 506 Variant Also Negotiates adalah indikator masalah spesifik dalam server yang terjadi ketika server digunakan dalam konfigurasi yang menggunakan apa yang disebut sebagai negosiasi konten transparan. Jenis negosiasi konten ini digunakan untuk mengelola berbagai versi sumber daya yang dapat dikirimkan tergantung pada kebutuhan klien yang meminta (misalnya bahasa, format file, atau penyandian yang berbeda).

Pada intinya, kode status 506 Variant Also Negotiates berarti bahwa ada kesalahan konfigurasi pada server yang mengarah pada perulangan negosiasi yang tak terbatas. Alih-alih server memilih versi tertentu dari sumber daya yang diminta berdasarkan preferensi klien, pemilihan itu sendiri mengacu pada negosiasi lain. Hasilnya adalah tidak ada varian yang dikirimkan karena server terperangkap dalam siklus referensi, di mana satu varian merujuk ke varian lain, yang pada gilirannya merujuk ke varian lain, dan seterusnya.

Contoh sederhana: Klien menginginkan halaman web dalam bahasa tertentu. Server memiliki versi bahasa yang berbeda dari situs web dan mencoba memilih versi yang paling sesuai. Namun, jika konfigurasi server salah, proses yang seharusnya memilih versi yang paling sesuai malah bisa merujuk ke putaran negosiasi lain dan bukannya membuat pilihan yang pasti. Kode status 506 Variant Also Negotiates memberi sinyal kepada klien bahwa server tidak dapat memberikan versi sumber daya yang sesuai karena konflik internal atau kesalahan konfigurasi ini.

Dalam praktiknya, kode status ini jarang terlihat karena mengasumsikan konfigurasi server yang sangat spesifik dan kondisi kesalahan. Untuk mengatasi masalah ini, diperlukan peninjauan dan koreksi konfigurasi server untuk memastikan bahwa negosiasi konten dapat dilakukan dengan benar tanpa memasuki loop yang tak terbatas.

Spesifikasi kode status HTTP 506

Kode status 506 Variant Also Negotiates menunjukkan bahwa server mengalami kesalahan konfigurasi internal: sumber daya varian yang dipilih dikonfigurasikan untuk terlibat dalam negosiasi konten transparan itu sendiri, dan karena itu bukan merupakan titik akhir yang tepat dalam proses negosiasi.

Sumber / Kutipan dari: Kode status HTTP 506 Variant Also Negotiates ditentukan oleh bagian 8.1 dari RFC2295.

Bagaimana cara melempar kode status 506 dengan PHP?

Untuk melemparkan kode status HTTP 506 pada halaman web, fungsi PHP http_response_code dapat digunakan. Sintaksnya adalah sebagai berikut: http_response_code(506) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Menguji Kode Status HTTP 506

Untuk dapat menampilkan kode status HTTP (dalam hal ini 506 Variant Also Negotiates) dan informasi lain di sisi klien, konsol pengembangan harus dibuka dengan F12. Kemudian arahkan ke tab "Jaringan". Sekarang halaman dapat dibuka, situs web (contoh index.php) akan terlihat di tab jaringan. Ini harus dipilih dan kemudian bagian Herder harus dipilih. Pengguna kemudian akan melihat hasil berikut:

Kode status 506 Variant Also Negotiates
Ikhtisar
URL: https://http-statuscode.com/errorCodeExample.php?code=506
Status: 506 Variant Also Negotiates
Itu: Network
Alamat IP: XX.XX.XX.XX
Kode status 506 Variant Also Negotiates

Cara membuat halaman kesalahan Anda sendiri untuk kode status 506

Membuat halaman kesalahan 506 Variant Also Negotiates Anda sendiri relatif mudah dengan server web "Apache" dan "NGINX".

Apache Webserver

Server web "Apache" adalah salah satu server web yang paling umum di Internet. Untuk membuat halaman kesalahan 506 Variant Also Negotiates Anda sendiri di "Apache", perubahan berikut ini harus dilakukan pada file berikut.

File: .htaccess
ErrorDocument 506 /errors/506.html

NGINX Webserver

Mirip dengan server web "Apache", "NGINX" juga banyak digunakan di Internet. Untuk membuat halaman kesalahan 506 Variant Also Negotiates Anda sendiri di "NGINX", perubahan berikut ini harus dilakukan pada file berikut.

File: sites-enabled/default
error_page 506 /506.html;
location = /506.html {
    root /usr/share/nginx/html;
    internal;
}

Kompatibilitas browser dari kode status 506

Chrome no data
Edge no data
Firefox no data
Opera no data
Safari no data
Chrome Android no data
Firefox for Android no data
Opera Android no data
Safari on iOS no data
Internet no data
WebView Android no data

Konstanta dalam bahasa pemrograman

http.StatusVariantAlsoNegotiates
Response::HTTP_VARIANT_ALSO_NEGOTIATES_EXPERIMENTAL
:variant_also_negotiates

Meme yang menghibur tentang kode status HTTP 506

Penulis: Tony Brüser
Penulis: Tony Brüser

Tony Brüser adalah seorang pengembang web yang antusias dengan kegemaran pada kode status HTTP.

LinkedInGitHub