506
Variant Also Negotiates
Statusa koda 506 vispārīgs skaidrojums
HTTP statusa kods 506 Variant Also Negotiates ir īpašas servera problēmas indikators, kas rodas, ja serveris ir izvietots konfigurācijā, kurā tiek izmantotas tā sauktās pārredzamās satura pārrunas. Šāda veida satura pārrunas tiek izmantotas, lai pārvaldītu dažādas resursa versijas, ko var piegādāt atkarībā no pieprasītāja klienta prasībām (piemēram, dažādas valodas, failu formāti vai kodējumi).
Sbūtībā 506 Variant Also Negotiates statusa kods nozīmē, ka serverī ir nepareiza konfigurācija, kas noved pie bezgalīgas pārrunu cilpas. Tā vietā, lai serveris izvēlētos konkrētu pieprasītā resursa versiju, pamatojoties uz klienta vēlmēm, pati izvēle attiecas uz vēl vienu sarunu procedūru. Rezultātā neviens no variantiem netiek piegādāts, jo serveris ir ieslēgts atsauču ciklā, kur viens variants atsaucas uz citu, kas savukārt atsaucas uz citu, un tā tālāk.
Pareizs piemērs: klients vēlas tīmekļa lapu noteiktā valodā. Serverī ir dažādas tīmekļa vietnes valodu versijas un tiek mēģināts izvēlēties piemērotāko versiju. Tomēr, ja servera konfigurācija ir nepareiza, process, kuram ir jāizvēlas vispiemērotākā versija, tā vietā, lai izdarītu galīgo izvēli, var atsaukties uz citu sarunu kārtu. Statusa kods 506 Variant Also Negotiates signalizē klientam, ka serveris nespēj piegādāt atbilstošu resursa versiju šo iekšējo konfliktu vai nepareizas konfigurācijas dēļ.
Praksē šis statusa kods tiek novērots reti, jo tas paredz ļoti specifisku servera konfigurāciju un kļūdu stāvokli. Lai atrisinātu šo problēmu, ir jāpārskata un jālabo servera konfigurācija, lai nodrošinātu, ka satura pārrunas var veikt pareizi, neiekļūstot bezgalīgā cilpā.
HTTP statusa koda 506 specifikācija
Avots / citāts no: 506 Variant Also Negotiates HTTP statusa kods ir norādīts 8.1 sadaļā 8.1.
HTTP protokols
Kā, izmantojot PHP, ievadīt 506 statusa kodu?
Lai tīmekļa lapā norādītu HTTP statusa kodu 506, var izmantot PHP funkciju http_response_code. Sintakse ir šāda: http_response_code(506) (PHP 5 >= 5.4.0, PHP 7, PHP 8)
Pārbaudīt 506 HTTP statusa kodu
Lai klienta pusē varētu attēlot HTTP statusa kodu (šajā gadījumā 506 Variant Also Negotiates) un citu informāciju, ar F12 ir jāatver izstrādes konsole. Pēc tam dodieties uz cilni "Tīkls". Tagad lapu var atvērt, tīmekļa vietnei (piemērs index.php) jābūt redzamai tīkla cilnē. Tā ir jāizvēlas un pēc tam jāizvēlas sadaļa Herder. Pēc tam lietotājs redzēs šādu rezultātu:
URL: https://http-statuscode.com/errorCodeExample.php?code=506
Statuss: 506 Variant Also Negotiates
Šie: Network
IP adrese: XX.XX.XX.XX
Kā izveidot savu kļūdas lapu statusa kodam 506
Apache Webserver
Tīmekļa serveris "Apache" ir viens no visizplatītākajiem tīmekļa serveriem internetā. Lai "Apache" serverī izveidotu savu 506 Variant Also Negotiates. kļūdas lapu, šajā failā jāveic šādas izmaiņas.
NGINX Webserver
Līdzīgi kā tīmekļa serveris "Apache", arī "NGINX" tiek plaši izmantots internetā. Lai izveidotu savu 506 Variant Also Negotiates. kļūdas lapu "NGINX" serverī, ir jāveic šādas izmaiņas šajā failā.
location = /506.html {
root /usr/share/nginx/html;
internal;
}
506 statusa koda saderība ar pārlūkprogrammu
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 |
Konstantes programmēšanas valodās
http.StatusVariantAlsoNegotiates
Response::HTTP_VARIANT_ALSO_NEGOTIATES_EXPERIMENTAL
:variant_also_negotiates