Come configurare smartphone e PC. Portale informativo
  • casa
  • OS
  • Come trovare e combattere la BOM è un brutto errore in WordPress. Risolvere il problema "Impossibile aggiungere informazioni di intestazione - intestazioni già inviate" Intestazioni di informazioni brutte

Come trovare e combattere la BOM è un brutto errore in WordPress. Risolvere il problema "Impossibile aggiungere informazioni di intestazione - intestazioni già inviate" Intestazioni di informazioni brutte

Questo errore non è difficile da correggere.
Spesso lo stesso messaggio compare all'inizio delle sessioni, con una formulazione leggermente diversa:
Avviso: impossibile inviare cookie di sessione - intestazioni già inviate
Avviso: impossibile inviare il limitatore della cache di sessione - intestazioni già inviate

Contrassegno dell'ordine dei byte
A volte hai controllato TUTTO - non c'è niente da nessuna parte. Cambia editore. Guarda il tuo file in un altro programma. Ad esempio, Blocco note di Windows, quando si utilizza la codifica Unicode, aggiunge il carattere di servizio Byte Order Mark all'inizio del file, senza informarti in alcun modo. Apri lo script in un altro editor e rimuovi i caratteri estranei. E cambia Blocco note con un editor diverso.
Oppure salva nella codifica UTF-8 senza BOM

Le numerose domande sul forum mi fanno fare qui nota importante:
Questo errore non viene visualizzato perché hai "qualcosa di scritto sopra" nel tuo script. E dal fatto che PHP mostra qualcosa nel browser. Non deve essere codice. Potrebbe essere messaggio di errore... può essere uno spazio o un tag html. Si si. Per i più talentuosi: si tratta di qualsiasi carattere inviato al browser, non solo di quelli che il browser mostra all'utente inesperto. Le pagine HTML hanno il testo di origine. Ed è lui che è il risultato dello script PHP, e non delle belle lettere con le immagini, come pensa un gran numero di persone.

È incredibile quanto un piccolo errore possa rendere il tuo sito WordPress completamente inattivo. Stiamo parlando, ovviamente, del famoso errore di avviso di WordPress. Attenzione: impossibile modificare le informazioni di intestazione - intestazioni già inviate da pluggable.php... Se sei uno di quelli che ha riscontrato questo errore, sei nel posto giusto. In questo, discuteremo prima di tutto la causa di questo errore e esamineremo le soluzioni che risolveranno finalmente il problema.

Cosa è richiesto

Prima di iniziare, assicurati di avere quanto segue:

  • Accesso al pannello di controllo del tuo hosting o accesso FTP

Come non è possibile modificare le informazioni sull'intestazione: si verificano intestazioni già inviate per errore

Diamo un'occhiata a un esempio di questo errore per comprenderne meglio le ragioni. L'errore di solito appare in questa forma:

Avvertenza: impossibile modificare le informazioni sull'intestazione - intestazioni già inviate da (output avviato da /public_html/wp-content/plugins/my-plugin/my-function.php:#) in /public_html/wp-includes/pluggable.php sulla riga #

Come puoi vedere, l'errore menziona due file. Il primo file (nel nostro caso: mia-funzione.php ospitato in / public_html // wp-content / plugin / my-plugin /) alla testa degli indagati. Questo è il nostro codice personalizzato che ha lo scopo di modificare le funzionalità principali fornite da WordPress. La funzionalità principale è nel file collegabile.php(File core di WordPress, invariato per qualsiasi installazione di WordPress). In altre parole, il problema è nel primo file, il che impedisce l'esecuzione del secondo file come previsto.

Il motivo principale dell'errore non è necessario spazi nel primo file... Questi sono spazi nella parte superiore o inferiore del file, spazi non necessari in qualsiasi punto del file o persino spazi nei tag PHP. ... A proposito, a causa del fatto che i programmatori possono (e di solito lo fanno) inserire erroneamente spazi extra nel loro codice, questo errore si verifica più spesso di quanto ci si potrebbe aspettare. La riga # nel messaggio di errore si riferisce alla posizione del problema: ti aiuterà a risolvere il problema più velocemente e senza problemi.

Impossibile modificare le informazioni sull'intestazione: intestazioni già inviate dalla correzione degli errori

Ora che sai qual è la causa dell'errore, puoi passare a risolverlo. Ti mostreremo due opzioni per risolvere il problema, che puoi provare singolarmente o una per una se non funziona separatamente.

Opzione 1 - Modifica del file difettoso

La prima opzione per risolvere l'errore Attenzione: impossibile modificare le informazioni di intestazione- correzione manuale del file con un errore. Hai già le informazioni necessarie per trovare il problema nel messaggio di errore stesso (ricorda, questo è il primo file nel messaggio). Tutto ciò che serve è aprire questo file tramite FTP, utilizzando un client come FileZilla o tramite un file manager.

Fondamentalmente, tutto ciò di cui devi occuparti qui è rimuovere spazi extra / righe vuote nel file. Un buon punto di partenza sarebbe la riga # menzionata nel messaggio di errore. Da lì, puoi continuare ad analizzare il resto del file cercando altri spazi non necessari o righe vuote fino alla fine del documento.

Assicurati che i tag di inizio e fine PHP siano scritti correttamente. Non ci deve essere spazio prima o dopo il tag , così come il tag ?> ... Inoltre, l'ultima riga di codice non deve terminare con uno spazio o un avanzamento riga aggiuntivo.

Nello screenshot qui sotto puoi vedere il file wp-config.php che ha spazi prima del primo tag PHP.


INDIZIO Nota: in molti editor di testo, gli spazi non necessari possono essere rimossi automaticamente. Ad esempio, per rimuovere spazi extra nell'editor Atom, evidenziare tutto il codice e andare su P ackages -> Spazi bianchi -> Rimuovi spazi bianchi finali.

Opzione 2 - Sostituisci il file difettoso

Ovviamente, la modifica di un numero di file errati può essere difficile. I file possono essere correlati a un plugin o a un tema che hai appena installato sul tuo sito, oppure possono anche essere file core di WordPress.

Se l'errore è effettivamente causato da un plugin o da un tema, tutto ciò che devi fare è reinstallarlo. Questa azione aiuta nella maggior parte dei casi. D'altra parte, se il file core di WordPress è la causa dell'errore, la soluzione migliore è prendere una copia pulita di WordPress e sostituire il file di errore nella tua installazione con quello corretto. Ciò assicurerà che il file difettoso venga ripristinato al suo stato originale mentre il resto dell'installazione del tuo sito WordPress rimane intatto. Ora, ricarica la pagina e assicurati che l'errore sia stato corretto.

Insomma

Sia che tu abbia incollato lo snippet di codice in un file, aggiunto un nuovo plugin/tema o scritto il codice a mano, c'è il rischio che appaiano spazi extra nel file. Questi spazi bianchi apparentemente innocenti potrebbero essere un bug di WordPress Attenzione: impossibile modificare le informazioni di intestazione - intestazioni già inviate da.

In questa guida, abbiamo spiegato come correggere questi errori e ora il tuo sito funziona di nuovo come previsto. È possibile trovare altri tutorial su WordPress.

autore

Elena ha una formazione tecnica professionale nel campo della tecnologia dell'informazione ed esperienza di programmazione in diversi linguaggi per diverse piattaforme e sistemi. Ha dedicato più di 10 anni alla sfera web, lavorando con vari CMS, come: Drupal, Joomla, Magento e ovviamente il sistema di gestione dei contenuti più popolare al giorno d'oggi - WordPress. I suoi articoli sono sempre tecnicamente accurati e accurati, che si tratti di una recensione di WordPress o di istruzioni su come configurare il server VPS.

Una volta, dopo aver visitato il mio blog, sono stato sorpreso di trovare un errore incomprensibile, qualcosa come:

Avviso: impossibile modificare le informazioni sull'intestazione - intestazioni già inviate da (output avviato su /xxxxxxxx/wp-config.php:1)

Inoltre, non puoi accedere in alcun modo al pannello di amministrazione. Immediatamente sono andato a controllare cosa c'era di sbagliato nel file wp-config.php. Tutto era a posto, le password per il database erano corrette. Ho pensato che fosse - hackerato di nuovo)) Ma ancora una volta, non c'erano segni di vandalismo su FTP. La cosa più strana (questo alla fine mi ha completamente confuso) era che solo il link al sito senza www o viceversa (non ricordo bene) non funzionava. Ho iniziato a bussare all'hoster, guardando le impostazioni nel pannello di amministrazione del dominio - in generale, molte cose.

Ma tutto si è rivelato molto più semplice - all'inizio del file di configurazione c'era una certa BOM- marker (firma) per i file UTF-8. Ecco perché l'errore di cui sopra stava spuntando. Per evitare che ciò accada a te, prima di tutto, devi utilizzare editor di codice che non impostano affatto questa firma o chiariscono se è necessario prima di salvare il file.

In alcuni editor di testo, potresti trovare "Includi firma Unicode (BOM)", "Aggiungi contrassegno ordine byte" o caselle di controllo simili nelle impostazioni. Altrimenti, non potendo disabilitare un'opzione non necessaria in un particolare programma, non è consigliabile utilizzarla. Sui forum specializzati puoi trovare un elenco di buoni editor di testo, questi sono: Blocco note2, PSPad, UnicEdit, Blocco note ++... In generale, scrivono molto su quest'ultimo, uno strumento piuttosto potente. In qualche modo ho avuto a caso un editor alternativo disponibile sul mio computer - Akelpad- Lo uso per compiti simili.

Un'altra cosa da notare è che l'errore con la BOM può essere non solo nel file wp-config.php. Inoltre, se l'opzione è disabilitata, la visualizzazione degli avvisi, non vedrai affatto dove si è insinuato il problema. In questi casi (e in tutti gli altri), consiglierei di usare un semplice script per trovare file con BOM... Yuri Belotitsky dovrebbe essere ringraziato per lo sviluppo.

Usare lo script è molto semplice.

  1. file richiesto
  2. Caricalo sul server FTP nella directory principale. Se WordPress non è installato nella radice del sito (ma nella cartella del blog, ad esempio), lo script deve essere posizionato nella directory in cui si trova WordPress ed eseguito da lì.
  3. L'avvio è molto semplice: digita nella barra degli indirizzi del browser il link http: //your.site/find_bom.php

Di conseguenza, otterrai un elenco di file difettosi. A proposito, per velocità di lavoro, lo script controlla solo quelle directory in cui gli utenti, di regola, caricano i file - root, / wp-content / temi e / wp-content / plugin.

Fondamentalmente è così. Com'era difficile risolvere un problema così semplice. Spero di esserti stato un po' di aiuto con la mia esperienza, e ora, quando apparirà l'avviso corrispondente, saprai cosa fare :) Se non riesci a correggere questo o quel file dalla BOM, puoi semplicemente caricarne uno nuovo dalla distribuzione di WordPress .

P.S. Un luogo adatto per gli sposi è l'organizzazione di banchetti e la soluzione di tutte le problematiche legate al matrimonio.

Comprensione delle intestazioni HTTP e dei campi di intestazione HTTP

Intestazioni HTTP fornire informazioni vitali necessarie per l'invio di una transazione HTTP tramite protocollo http.

Il formato generale dell'intestazione HTTP contiene coppie nome-valore separate da due punti nel campo dell'intestazione. Ciascuna delle coppie nome-valore termina con un ritorno a capo (CR) e una sequenza di caratteri di avanzamento riga (LF). I campi vuoti alla fine di ogni intestazione indicano la fine dell'intestazione.

Il formato di intestazione comune seguito dalle applicazioni è simile a:

Tipi di intestazioni HTTP

Esistono quattro tipi di intestazioni dei messaggi HTTP. Sono:

  • Intestazione generale
  • Intestazione richiesta
  • Intestazione della risposta
  • Intestazione entità

Intestazione generale

I campi di intestazione generale hanno un'applicabilità comune nei messaggi di richiesta e risposta. I campi di intestazione si applicano solo al messaggio trasmesso e non si applicano all'entità trasferita.

La struttura di un'intestazione generale è simile a:

Controllo cache Il campo specifica le direttive che devono essere seguite da ogni meccanismo di memorizzazione nella cache su un sistema di richiesta e risposta.

Connessione campo consente al mittente di specificare le opzioni richieste per una connessione. L'intestazione della connessione ha il seguente formato:

Data il campo rappresenta la data e l'ora durante l'inizio del messaggio. Il formato della data specificato in HTTP è simile a:

pragma Il campo aiuta a includere la direttiva specifica di implementazione applicabile a qualsiasi destinatario su un sistema di richiesta e risposta.

trailer Il valore del campo specifica se un insieme di campi di intestazione nel trailer del messaggio è codificato con la codifica del trasferimento di blocchi.

Codifica di trasferimento campo indica se viene applicato un tipo di trasformazione al corpo del messaggio.

Aggiornamento Il campo consente ai client di specificare protocolli di comunicazione aggiuntivi supportati. Consente inoltre al server di cambiare protocollo con i protocolli aggiuntivi.

attraverso field sono campi obbligatori utilizzati da proxy e gateway che indicano protocolli intermedi. Indica anche il destinatario della richiesta tra user-agent e server e la risposta tra server e client.

Avvertimento contiene informazioni aggiuntive sullo stato del messaggio e sulle trasformazioni del messaggio che non si riflettono nel messaggio.

Le intestazioni di avviso vengono generalmente inviate con le risposte.

Il campo dell'intestazione della richiesta consente ai client di trasmettere informazioni aggiuntive sulla richiesta e sul client al server.

La struttura di un'intestazione di richiesta è simile a:

Accettare campo specifica i tipi di media che sono accettabili per la risposta.

"*" viene utilizzato per raggruppare i tipi di media nell'intervallo

"* / *" indica tutti i tipi di media

"tipo / *" indica tutti i sottotipi di un tipo

Accetta-Charset il campo indica i set di caratteri accettabili per la risposta. Rende i client in grado di comprendere set di caratteri speciali per segnalare al server di rappresentare il documento in questi set di caratteri.

Accetta-codificaè simile a Accetta, limita la codifica del contenuto accettabile della risposta.

Accetta-Linguaè simile a Accetta, limita il set preferito di lingue naturali.

Autorizzazioneè per gli interpreti che desiderano autenticarsi con il server.

Aspettarsi campo indica i comportamenti del server richiesti da un client.

A partire dal Il campo contiene l'indirizzo e-mail di un utente che controlla l'agente utente richiedente.

Ospite Il campo specifica l'host Internet e il numero di porta della risorsa richiesto dall'URI dell'utente.

If-match campo viene utilizzato per creare metodi condizionali.

Se-Modificato-da campo viene utilizzato per creare un metodo condizionale. Se la variante richiesta non viene modificata entro il tempo specificato, l'entità non verrà restituita dal server.

Se-nessuno-match consente un aggiornamento efficiente delle informazioni sulla cache con un sovraccarico minimo della transazione.

Se-Range campo consente ai clienti di ricevere parte dell'entità mancante o in altro modo, i clienti possono chiedere di inviare l'intera nuova entità.

Se-Non modificato-Da consente al server di eseguire l'operazione richiesta se non è stato modificato dall'ora specificata in questo campo.

Max in avanti fornisce meccanismi con metodi TRACE e OPTIONS per limitare i proxy o gateway di inoltro della richiesta.

Autorizzazione proxy campo consente al client di identificare per proteggere il proxy.

Gamma Il campo specifica le entità HTTP nei messaggi HTTP rappresentati come una sequenza di byte. La richiesta di recupero HTTP richiede uno o più sottointervallo di entità utilizzando i metodi GET.

referente Il campo consente ai client di specificare l'URI dell'indirizzo della risorsa da cui si trova l'URI di richiesta.

TE il campo indica il codice di trasferimento dell'estensione che può accettare nella risposta. Inoltre, indica se accetterà i campi trailer nella codifica del trasferimento di blocchi.

Agente utente contiene informazioni sull'agente utente richiedente.

Intestazione risposta HTTP

Il campo dell'intestazione della risposta consente al server di passare informazioni aggiuntive attraverso le risposte diverse dalla semplice risposta della riga di stato.

La struttura dell'intestazione della risposta è simile a:

Accetta-Range Il campo consente ai server di indicare l'accettazione delle richieste di intervallo di risorse.

Età Il campo indica al mittente il tempo approssimativo trascorso dal momento in cui il server ha risposto.

ETag Il campo fornisce il valore corrente del tag di entità per una richiesta.

Posizione reindirizza i destinatari a posizioni diverse da Request-URI per completare l'identificazione di una nuova risorsa.

Autenticazione proxy il campo è un'inclusione obbligatoria per la risposta di autenticazione proxy.

Riprova dopo viene utilizzato come risposta quando un servizio non è disponibile per indicare la durata del periodo per il quale il servizio rimarrà non disponibile per il cliente.

server Il campo contiene informazioni sul software utilizzato dal server per gestire le richieste.

Variare Il campo indica il campo di richiesta che determina se una cache è idonea a utilizzare la risposta di una richiesta senza riconvalidare la risposta.

Autenticazione WWW vengono utilizzati quando un messaggio di risposta non è autorizzato.

I campi dell'intestazione dell'entità definiscono le metainformazioni sul corpo dell'entità o sulla risorsa richiesta. Il formato dell'intestazione dell'entità è simile a:

Permettere campo elenca l'insieme dei metodi supportati dalle risorse identificate dall'URI di richiesta.

Codifica del contenuto viene utilizzato come modificatore del tipo di supporto.

Contenuto-Lingua Il campo descrive il linguaggio naturale per i client di un'entità.

Contenuto-Lunghezza campo indica la dimensione di un'entità rappresentata in numero decimale.

Contenuto-Posizione fornisce la posizione della risorsa per un'entità quando è accessibile da una posizione diversa dall'URI richiesto.

Contenuto-MD5 fornisce il controllo dell'integrità del messaggio (MIC) utilizzando un digest MD5 sul corpo dell'entità.

Gamma di contenuti Il campo specifica dove deve essere applicato il corpo parziale dell'intero corpo dell'entità.

Tipo di contenuto campo indica se il tipo di supporto del corpo dell'entità viene inviato al destinatario o il metodo GET viene utilizzato per inviare le richieste.

Scade fornisce la data/ora dopo la quale la risposta diventa obsoleta.

Ultima modifica campo indica la data e l'ora dell'ultima modifica della variante.

L'ordine in cui il nome del campo appare nell'intestazione quando viene ricevuto è insignificante. Convenzionalmente le intestazioni generali vengono posizionate per prime, seguite dall'intestazione della richiesta o della risposta con l'intestazione dell'entità alla fine.

Avviso sul copyright: si prega di non copiare o tradurre questo articolo senza previa autorizzazione scritta dal sito

HTTP Debugger è un analizzatore HTTP senza proxy per sviluppatori che offre la possibilità di acquisire e analizzare intestazioni HTTP, cookie, parametri POST, contenuto HTTP e intestazioni CORS da qualsiasi browser o applicazione desktop. Interfaccia utente fantastica e molto facile da usare. Non un proxy, nessun problema di rete!

In questo articolo vedremo a cosa servono le intestazioni, senza entrare nei dettagli, chi è responsabile di cosa. Una descrizione dei ruoli delle intestazioni più comuni sarà data nei seguenti articoli.

Tutti gli articoli del ciclo:

  • Cosa sono le intestazioni HTTP. Teoria generale.

HTTP sta per HyperText Transfer Protocol. Un protocollo è un insieme di regole mediante le quali dispositivi diversi scambiano dati. È stato creato negli anni '90. Ora è usato quasi ovunque su Internet. Tutto ciò che vedi nella finestra del browser è stato ricevuto tramite questo protocollo. Le intestazioni http sono forse la cosa principale nella comunicazione tra i dispositivi. Trasmettono informazioni di base sulla connessione stabilita e le informazioni trasmesse attraverso questa connessione.
Diamo uno sguardo allo schema di comunicazione dei due dispositivi. Lascia che questi dispositivi siano il tuo computer e un server su Internet:

Come puoi vedere, il browser ha inviato una richiesta http. Potrebbe assomigliare a questo:

GET / altro-19 HTTP / 1.1
Ospite: www.scriptsite.ru
Agente utente: Mozilla / 5.0 (Windows; U; Windows NT 6.0; ru; rv: 1.9.1.5) Gecko / 20091102 Firefox / 3.5.5 (.NET CLR 3.5.30729)
Accetta: text/html, application/xhtml + xml, application/xml; q = 0.9, * / *; q = 0.8
Accetta-Lingua: ru, en-us; q = 0.7, en; q = 0.3
Accetta-codifica: gzip, deflate
Accetta-Charset: windows-1251, utf-8; q = 0.7, *; q = 0.7
Keep-Alive: 300
Connessione: keep-alive

In questo caso, la prima riga è una riga di richiesta, tutte le altre righe sono intestazioni http che contengono informazioni aggiuntive sulla richiesta, sul client che richiede queste informazioni, su molte altre cose.
In risposta alla nostra richiesta, il server può inviare le seguenti intestazioni:

Server: Apache / 2.0.61 (Unix) mod_ssl / 2.0.61 OpenSSL / 0.9.8k mod_dp20 / 0.99.2 PHP / 5.2.5 mod_python / 3.3.1 Python / 2.5.1 mod_ruby / 1.2.6 Ruby / 1.8.6 (2007-09-24)

X-Powered-By: PHP / 5.2.5

Set-Cookie: PHPSESSID = ft47gokfee6amv3eda3k1p93s3; percorso = /

Cache-Control: no-store, no-cache, must-revalidate, post-check = 0, pre-check = 0

Pragma: no-cache

Keep-Alive: timeout = 10, max = 1024

Connessione: Keep-Alive

Codifica di trasferimento: chunked

Tipo di contenuto: testo / html

La prima riga è la riga di stato. Il resto delle righe sono intestazioni. Nel diagramma è stato mostrato che viene caricato anche il contenuto della pagina. Ma questo contenuto di solito non è visualizzato nei plug-in che visualizzano le intestazioni. E il contenuto della pagina è solo un caso speciale. Secondo il protocollo, la pagina non deve essere trasmessa. Al suo posto, è possibile trasmettere un'immagine, un file audio e un video. E tutti avranno titoli molto diversi.

Come posso vedere le intestazioni http?

Per vedere le intestazioni http, consiglio i seguenti plugin per browser Firefox:

Se stai utilizzando il browser Chrome, puoi visualizzare tutte le informazioni facendo clic sul pulsante Impostazioni - Strumenti - Strumenti per sviluppatori. La scheda delle reti.
Non posso consigliare gli utenti del browser Opera, perché non sono amico di questo browser. Con i plugin installati e in esecuzione, prova ad aggiornare la pagina. Vedrai immediatamente enormi elenchi di richieste e risposte attraverso le quali il tuo browser ha comunicato con il server.

Intestazioni HTTP e accesso ad esse in php

Se sei uno sviluppatore php, puoi accedere alle intestazioni delle richieste utilizzando la funzione getallheaders(). Per comprenderne il funzionamento, eseguiamo il seguente codice:

E otteniamo una stampa dell'array di intestazioni.

Ma più spesso si accede tramite la variabile globale $ _SERVER. Quasi ogni intestazione http ha un nome di elemento simile in questa variabile, formato secondo il principio HTTP_header_name. Quindi per lo stesso 'User_Agent' esiste una variabile $ _SERVER ['HTTP_USER_AGENT'];

La funzione headers_list() viene utilizzata per ottenere le intestazioni che il server invierà all'utente. Di norma, il server crea le intestazioni richieste mancanti già alla fine di tutti gli script. Pertanto, questo array conterrà le intestazioni sia quelle che il server ha creato prima di avviare l'esecuzione dello script (e non verranno modificate), sia quelle che abbiamo impostato manualmente. Possono essere impostati manualmente utilizzando la funzione di intestazione;
Eseguiamo il seguente codice:

Vedremo una stampa delle intestazioni pronte per essere inviate nel momento in cui la funzione viene chiamata:

La prima intestazione è stata impostata automaticamente e contiene il nome del server su cui è in esecuzione lo script. Il secondo viene installato da noi manualmente. Se il browser avesse bisogno di un'intestazione Fruit, la prenderebbe dalla risposta http del server e la userebbe. Ma poiché il nostro browser non ne ha bisogno, ignora semplicemente la riga che non capisce.

La struttura della richiesta http

La nostra richiesta è simile a questa:

La prima riga, come accennato in precedenza, è la stringa di query. Consiste di tre parti:

  • metodo(metodo) - indica che tipo di richiesta. I metodi più comuni sono GET, POST, HEAD. Se ne parlerà nella prossima sezione.
  • sentiero(percorso) - Di solito è la parte dell'URL che segue il dominio. Ad esempio, se inserisci http://www.scriptsite.ru/about/ nella barra degli indirizzi, il valore del percorso sarà / about /.
  • protocollo(protocollo) - il protocollo utilizzato. Tipicamente composto da "HTTP" e dalla versione del protocollo. In genere, i browser moderni utilizzano la versione 1.1.

Quindi ci sono intestazioni sotto forma di stringhe del formato "Nome: valore".
A proposito, anche i dati sui cookie vengono trasmessi in questa richiesta come una delle intestazioni. La maggior parte di queste linee sono facoltative. La query può essere abbreviata in due righe:

GET / articolo / mostra / 4 / HTTP / 1.1

Host: scriptsite.ru

Metodi di richiesta

OTTENERE

get request viene solitamente utilizzato per richiedere un documento passando alcuni parametri.
Questo è il metodo principale utilizzato per ottenere pagine html, immagini, file CSS e JavaScript, ecc.
A causa del fatto che i parametri possono essere qualsiasi e sul server non ci sono restrizioni sui metodi della loro elaborazione, spesso viene utilizzato il metodo per la richiesta dei dati per trasferire le informazioni. Ad esempio, avremo un modulo come questo

In questo caso, questi parametri saranno visibili nella barra degli indirizzi del browser.

INVIARE

Post è il metodo utilizzato per inviare i dati al server. Sebbene sia possibile inviare dati al server utilizzando il metodo GET tramite la barra degli indirizzi del browser, nella maggior parte dei casi si preferisce il POST. L'invio di grandi quantità di dati tramite GET non è pratico. Inoltre, GET ha alcune restrizioni che non consentono, ad esempio, di pubblicare questo articolo sul mio sito tramite una sola riga del browser. Le richieste POST sono più spesso utilizzate per inviare moduli web. Modifichiamo il form dell'esempio precedente dandogli il metodo POST

Principali articoli correlati