506

Variant Also Negotiates

Oficial
Punctul final se negociază singur

Explicația generală a codului de stare 506

Codul de stare HTTP 506 Variant Also Negotiates este un indicator al unei probleme specifice în cadrul unui server care apare atunci când serverul este implementat într-o configurație care utilizează așa-numita negociere transparentă a conținutului. Acest tip de negociere a conținutului este utilizat pentru a gestiona diferite versiuni ale unei resurse care pot fi livrate în funcție de cerințele clientului solicitant (de exemplu, diferite limbi, formate de fișiere sau codificări).

În esență, codul de stare 506 Variant Also Negotiates înseamnă că există o configurație greșită pe server care duce la o buclă infinită de negociere. În loc ca serverul să selecteze o versiune specifică a resursei solicitate pe baza preferințelor clientului, selecția în sine se referă la o altă negociere. Rezultatul este că niciuna dintre variante nu este livrată, deoarece serverul este prins într-un ciclu de referințe, în care o variantă se referă la alta, care la rândul ei se referă la alta, și așa mai departe.

Un exemplu simplu: Un client dorește o pagină web într-o anumită limbă. Serverul dispune de diferite versiuni lingvistice ale site-ului web și încearcă să selecteze cea mai potrivită versiune. Cu toate acestea, dacă configurația serverului este incorectă, procesul care ar trebui să selecteze cea mai potrivită versiune ar putea în schimb să se refere la o altă rundă de negocieri în loc să facă o selecție definitivă. Codul de stare 506 Variant Also Negotiates semnalează clientului că serverul nu poate furniza o versiune adecvată a resursei din cauza acestor conflicte interne sau a unor configurații greșite.

În practică, acest cod de stare este rar întâlnit, deoarece presupune o configurație de server și o condiție de eroare foarte specifice. Rezolvarea problemei necesită o revizuire și o corecție a configurației serverului pentru a se asigura că negocierea conținutului poate fi efectuată corect fără a intra într-o buclă infinită.

.

Specificarea codului de stare HTTP 506

Codul de stare 506 Variant Also Negotiates indică faptul că serverul are o eroare de configurare internă: resursa variantă aleasă este configurată pentru a se angaja singură în negocierea transparentă a conținutului și, prin urmare, nu este un punct final adecvat în procesul de negociere.

Sursa / Citat din: Codul de stare HTTP 506 Variant Also Negotiates este specificat în secțiunea 8.1 din RFC2295.

Cum să arunci un cod de stare 506 cu PHP?

Pentru a afișa codul de stare HTTP 506 pe o pagină web, se poate utiliza funcția PHP http_response_code. Sintaxa este următoarea: http_response_code(506) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Testați codul de stare HTTP 506

Pentru a putea afișa codul de stare HTTP (în acest caz 506 Variant Also Negotiates) și alte informații pe partea clientului, consola de dezvoltare trebuie deschisă cu F12. Apoi navigați la fila "Network" (Rețea). Acum pagina poate fi deschisă, site-ul web (exemplu index.php) ar trebui să fie vizibil în fila rețea. Acesta trebuie selectat și apoi trebuie selectată secțiunea Herder. Utilizatorul va vedea apoi următorul rezultat:

Cod de stare 506 Variant Also Negotiates
Prezentare generală
URL: https://http-statuscode.com/errorCodeExample.php?code=506
Stare: 506 Variant Also Negotiates
Cei de la: Network
Adresa IP: XX.XX.XX.XX
Cod de stare 506 Variant Also Negotiates

Cum să vă creați propria pagină de eroare pentru codul de stare 506

Crearea propriei pagini de eroare 506 Variant Also Negotiates este relativ ușoară atât cu serverele web "Apache", cât și cu cele "NGINX".

Apache Webserver

Serverul web "Apache" este unul dintre cele mai răspândite servere web de pe internet. Pentru a vă crea propria pagină de eroare 506 Variant Also Negotiates în "Apache", trebuie făcută următoarea modificare în următorul fișier.

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

NGINX Webserver

Similar cu serverul web "Apache", "NGINX" este, de asemenea, utilizat pe scară largă pe internet. Pentru a vă crea propria pagină de eroare 506 Variant Also Negotiates în "NGINX", trebuie făcută următoarea modificare în următorul fișier.

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

Compatibilitatea browserului cu codul de stare 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

Constante în limbajele de programare

http.StatusVariantAlsoNegotiates
Response::HTTP_VARIANT_ALSO_NEGOTIATES_EXPERIMENTAL
:variant_also_negotiates

Meme-uri amuzante despre codul de stare HTTP 506

Autor: Tony Brüser
Autor: Tony Brüser

Tony Brüser este un dezvoltator web entuziast cu o înclinație pentru codurile de stare HTTP.

LinkedInGitHub