Cum se configurează smartphone-uri și PC-uri. Portal informativ
  • Acasă
  • OS
  • Cum să găsiți și să depășiți BOM - o eroare neplăcută în WordPress. Rezolvarea problemei „Nu se pot adăuga informații de antet - anteturi deja trimise” Anteturi de informații urate

Cum să găsiți și să depășiți BOM - o eroare neplăcută în WordPress. Rezolvarea problemei „Nu se pot adăuga informații de antet - anteturi deja trimise” Anteturi de informații urate

Această eroare este ușor de remediat.
Adesea, același mesaj apare la începutul sesiunilor, într-o formulare ușor diferită:
Avertisment: nu se poate trimite cookie-ul de sesiune - anteturile au fost deja trimise
Avertisment: nu se poate trimite limitatorul de cache de sesiune - anteturile deja au fost trimise

Marca de ordine a octetilor
Uneori ai verificat TOT și nu e nimic acolo. Schimbați editorul. Vizualizați fișierul într-un alt program. De exemplu, Windows Notepad, când folosește codificarea Unicode, adaugă un caracter de serviciu Byte Order Mark la începutul fișierului, fără să te informeze în vreun fel. Deschideți scriptul într-un alt editor și eliminați orice caractere străine. Și schimbați Notepad cu alt editor.
Sau salvați în codificare UTF-8 fără BOM

Numeroase întrebări de pe forum mă obligă să fac aici notă importantă:
Această eroare nu apare deoarece „este scris ceva mai sus” în scriptul tău. Și din faptul că PHP afișează ceva în browser. Acesta nu este neapărat cod. Ar putea fi mesaj de eroare. poate fi un spațiu sau o etichetă HTML. Da Da. Pentru cei mai talentați: vorbim despre orice caracter trimis către browser, și nu doar despre cele pe care browserul le afișează unui utilizator neexperimentat. Paginile HTML au text sursă. Și tocmai acesta este rezultatul muncii unui script PHP, și nu litere frumoase cu imagini, așa cum cred un număr foarte mare de oameni.

Este uimitor cum o mică greșeală poate face site-ul dvs. WordPress complet inoperabil. Vorbim, desigur, despre celebra eroare de avertizare WordPress Atenție: nu se pot modifica informațiile antetului — anteturile deja trimise de pluggable.php (nu se pot modifica informațiile antetului). Dacă sunteți unul dintre cei care se confruntă cu această eroare, atunci ați ajuns la locul potrivit. În aceasta, vom discuta motivul pentru care această eroare apare în primul rând și vom analiza soluțiile care vor rezolva permanent problema.

De ce ai nevoie

Înainte de a începe, asigurați-vă că aveți următoarele:

  • Acces la panoul de control al găzduirii sau acces FTP

Cum apar informațiile de antet Nu se pot modifica - anteturile deja trimise prin eroare?

Să ne uităm la un exemplu al acestei erori pentru a înțelege mai bine motivele. Eroarea apare de obicei sub această formă:

Avertisment: Nu se pot modifica informațiile antetului - anteturile deja trimise de (ieșirea a început la /public_html/wp-content/plugins/my-plugin/my-function.php:#) în /public_html/wp-includes/pluggable.php pe linia #

După cum puteți vedea, eroarea menționează două fișiere. Primul fișier (în cazul nostru: my-function.php postat în /public_html//wp-content/plugins/my-plugin/) în fruntea suspecţilor. Acesta este codul nostru personalizat care este conceput pentru a modifica funcționalitatea de bază oferită de WordPress. Funcționalitatea de bază se află în fișier conectabil.php(Fișier de bază WordPress, neschimbat pentru orice instalare WordPress). Cu alte cuvinte, problema este în primul fișier, ceea ce împiedică executarea corectă a celui de-al doilea fișier.

Cauza principală a erorii este inutilă spații în primul fișier. Acestea sunt spații în partea de sus sau de jos a fișierului, spații inutile oriunde în fișier sau chiar spații în etichetele PHP . Apropo, deoarece programatorii pot (și de obicei o fac) să introducă din greșeală spații suplimentare în codul lor, această eroare apare mai des decât v-ați aștepta. Linia # furnizată în mesajul de eroare se referă la locația problemei - acest lucru va ajuta la rezolvarea problemei mai rapid și fără agitație.

Remedierea erorii nu poate modifica informațiile antetului - anteturile deja trimise de

Acum că știți ce cauzează eroarea, puteți continua să o remediați. Vă vom arăta două opțiuni pentru a remedia problema, pe care le puteți încerca individual sau pe rând, dacă individual nu vă ajută.

Opțiunea 1 – Editarea fișierului defect

Prima soluție la eroare Atenție: nu se pot modifica informațiile din antet– corectarea manuală a unui fișier cu o eroare. Aveți deja informațiile necesare pentru a găsi problema în mesajul de eroare în sine (rețineți că acesta este primul fișier din mesaj). Tot ce trebuie să faceți este să deschideți acest fișier prin FTP folosind un client precum FileZilla sau printr-un manager de fișiere.

În esență, tot ceea ce trebuie avut în vedere aici este eliminarea spațiilor suplimentare/liniilor goale din fișier. Un loc bun pentru a începe este linia # menționată în mesajul de eroare. De aici, puteți continua să analizați restul fișierului, căutând alte spații inutile sau linii goale, până la sfârșitul documentului.

Asigurați-vă că scrieți corect etichetele de început și de sfârșit PHP. Nu ar trebui să existe spațiu înainte sau după etichetă , precum și eticheta ?> . De asemenea, ultima linie de cod nu trebuie să se termine cu un spațiu sau cu un avans de linie suplimentar.

În captura de ecran de mai jos puteți vedea fișierul wp-config.php, care are spații înaintea primei etichete PHP.


CHEIE: Mulți editori de text pot elimina automat spațiile inutile. De exemplu, pentru a elimina spații suplimentare din editorul Atom, evidențiați tot codul și mergeți la P ackages -> Spațiu alb -> Eliminați spațiul alb final.

Opțiunea 2 – Înlocuiți fișierul defect

Desigur, editarea unei serii întregi de fișiere cu erori poate fi dificilă. Fișierele ar putea fi legate de un plugin sau o temă pe care tocmai ați instalat-o pe site-ul dvs. sau ar putea fi chiar fișiere de bază WordPress.

Dacă eroarea este într-adevăr cauzată de un plugin sau o temă, tot ce trebuie să faceți este să o reinstalați. Această acțiune ajută în majoritatea cazurilor. Pe de altă parte, dacă fișierul de bază WordPress este cauza erorii, cea mai bună soluție este să luați o copie curată a WordPress și să înlocuiți fișierul cu eroarea din instalarea dvs. cu același în versiunea corectă. Acest lucru va asigura că fișierul defect este restabilit la starea inițială, în timp ce restul instalării site-ului dvs. WordPress rămâne intactă. Acum, reîncărcați pagina și asigurați-vă că eroarea este remediată.

În concluzie

Indiferent dacă ați lipit o bucată de cod într-un fișier, ați adăugat un nou plugin/temă sau ați scris codul manual, există riscul ca în fișier să apară spații suplimentare. Aceste spații aparent inocente se pot transforma într-o eroare WordPress Avertisment: nu se pot modifica informațiile antetului — anteturi deja trimise de.

În acest ghid, am analizat cum să remediați astfel de erori, iar acum site-ul dvs. funcționează din nou conform așteptărilor. Mai multe tutoriale WordPress pot fi găsite aici.

Autor

Elena are o educație tehnică profesională în domeniul tehnologiei informației și experiență în programare în diferite limbi pentru diferite platforme și sisteme. Ea a dedicat mai mult de 10 ani industriei web, lucrând cu diverse CMS-uri, cum ar fi Drupal, Joomla, Magento și, desigur, cel mai popular sistem de management al conținutului din zilele noastre – WordPress. Articolele ei sunt întotdeauna verificate din punct de vedere tehnic și exacte, fie că este vorba despre o recenzie pentru WordPress sau instrucțiuni pentru configurarea serverului dvs. VPS.

Într-o zi, când am intrat pe blogul meu, am fost surprins să găsesc o eroare de neînțeles, ceva de genul:

Avertisment: Nu se pot modifica informațiile antetului — anteturi deja trimise de (ieșire a început la /xxxxxxxx/wp-config.php:1)

Mai mult, nu există nicio modalitate de a intra în panoul de administrare. M-am dus imediat să verific ce este în neregulă cu fișierul wp-config.php. Totul era la locul lui, parolele bazei de date erau corecte. Am crezut că a fost spart din nou)) Dar din nou, nu au fost observate semne de vandalism pe FTP. Cel mai ciudat lucru (acest lucru m-a derutat până la urmă complet) a fost că doar linkul către site fără www nu a funcționat, sau invers (nu-mi amintesc exact). Am început să contactez hosterul, uitându-mă la setările din panoul de administrare al domeniului - în general, o mulțime de lucruri.

Dar s-a dovedit a fi mult mai simplu - la începutul fișierului de configurare era o anumită BOM— marker (semnătură) pentru fișierele UTF-8. De aceea a apărut eroarea de mai sus. Pentru a preveni acest lucru, în primul rând trebuie să utilizați editori de cod care fie nu pun deloc această semnătură, fie înainte de a salva fișierul clarifică dacă este necesar.

În unele editoare de text, este posibil să găsiți în setări casete de selectare „Include semnătura Unicode (BOM)”, „Adăugați marca de ordine a octetilor” sau similare. În caz contrar, fără a putea dezactiva o opțiune inutilă într-un anumit program, nu este recomandat să o utilizați. Pe forumurile specializate puteți găsi o listă de editori de text buni, acestea sunt: Notepad2, PSPad, UnicEdit, Notepad++. În general, se scriu multe despre acesta din urmă; este un instrument destul de puternic. Cumva, întâmplător, aveam un editor alternativ disponibil pe computerul meu - Akelpad— Îl folosesc pentru sarcini similare.

Un alt punct demn de remarcat este că o eroare cu BOM poate apărea nu numai în fișierul wp-config.php. Mai mult, dacă opțiunea de afișare a avertismentelor este dezactivată, nu veți vedea deloc unde s-a strecurat problema. În astfel de cazuri (și toate celelalte) aș recomanda utilizarea unui simplu script pentru căutarea fișierelor cu BOM. Iurii Belotitsky ar trebui să fie mulțumit pentru dezvoltare.

Utilizarea scriptului este foarte simplă.

  1. fișierul necesar
  2. Încărcați-l pe serverul FTP din directorul rădăcină. Dacă WordPress nu este instalat în rădăcina site-ului (ci în folderul blog, de exemplu), atunci scriptul trebuie plasat în directorul în care se află WordPress și rulat de acolo.
  3. Lansarea este foarte simplă - trebuie doar să tastați în bara de adrese a browserului dvs. linkul http://your.site/find_bom.php

Ca rezultat, veți obține o listă de fișiere care sunt defecte. Apropo, pentru a accelera munca, scriptul verifică doar acele directoare în care utilizatorii încarcă de obicei fișiere - root, /wp-content/themes și /wp-content/plugins.

Practic asta este. Cât de greu a fost să rezolvi o problemă atât de simplă. Sper că te-am ajutat puțin cu experiența mea, iar acum când apare avertismentul corespunzător, vei ști ce să faci :) Dacă nu poți repara unul sau altul fișier din BOM, poți pur și simplu să încarci unul nou din BOM. Distribuție WordPress.

P.S. Un site potrivit pentru tinerii casatoriti este organizarea de banchete si rezolvarea tuturor problemelor legate de nunta.

Înțelegerea antetelor HTTP și a câmpurilor de antet HTTP

Antete HTTP furnizați informații vitale necesare pentru o tranzacție HTTP trimisă prin protocol http.

Formatul general de antet HTTP conține perechi nume - valoare separate prin două puncte în câmpul antet. Fiecare dintre perechile nume-valoare se termină cu o secvență de caractere de întoarcere a carului (CR) și o secvență de caractere de avans de linie (LF). Câmpurile goale de la sfârșitul fiecărui antet indică sfârșitul antetului.

Formatul de antet comun urmat de aplicații arată astfel:

Tipuri de anteturi HTTP

Există patru tipuri de anteturi de mesaje HTTP. Sunt:

  • Antet general
  • Antet cerere
  • Antet de răspuns
  • Antet de entitate

Antet general

Câmpurile de antet general au aplicabilitate comună în mesajele de solicitare și răspuns. Câmpurile de antet se aplică numai mesajului transmis și nu se aplică entității transferate.

Structura unui antet general arată astfel:

Controlul cache-ului câmpul specifică directivele care trebuie urmate de fiecare mecanism de stocare în cache pe un sistem de cerere și răspuns.

Conexiune câmpul permite expeditorului să specifice opțiunile necesare pentru o conexiune. Antetul conexiunii are următorul format:

Data câmpul reprezintă data și ora în timpul inițierii mesajului. Formatul de dată specificat în HTTP arată astfel:

Pragma câmpul ajută la includerea unei directive specifice de implementare aplicabile oricărui destinatar într-un sistem de solicitare și răspuns.

Remorcă valoarea câmpului specifică dacă un set de câmpuri de antet din trailerul mesajului este codificat cu codare de transfer în bloc.

Transfer-Codificare câmpul indică dacă orice tip de transformare este aplicat corpului mesajului.

Actualizare câmpul permite clienților să specifice protocoale de comunicare suplimentare acceptate. De asemenea, permite serverului să schimbe protocoalele cu protocoalele suplimentare.

Prin intermediul câmpurile sunt câmpuri obligatorii utilizate de proxy și gateway-uri care indică protocoale intermediare. De asemenea, indică destinatarul cererii între agent utilizator și server și răspunsul dintre server și client.

Avertizare câmpul conține informații suplimentare despre starea mesajului și transformările mesajului care nu sunt reflectate în mesaj.

Anteturile de avertizare sunt de obicei trimise cu răspunsuri.

Câmpul antet cerere permite clienților să transmită suplimentar informații despre cerere și informații despre client către server.

Structura antetului unei cereri arată astfel:

Accept câmpul specifică tipurile media care sunt acceptabile pentru răspuns.

„*” este folosit pentru a grupa tipurile media în interval

„*/*” indică toate tipurile de media

„tip/*” indică toate subtipurile unui tip

Accept-Charset câmpul indică seturi de caractere acceptabile. Face clienții capabili să înțeleagă seturi de caractere speciale pentru a semnala serverului să reprezinte documentul în aceste seturi de caractere.

Acceptare-Codare câmpul este similar cu Accept, restricționează codificarea conținutului acceptabil pentru răspuns.

Accept-Limba câmpul este similar cu Accept, restricționează setul preferat de limbaje naturale.

Autorizare câmpul este pentru agenții utilizator care doresc să se autentifice cu serverul.

Aştepta câmpul indică comportamentele serverului cerute de un client.

Din câmpul conține adresa de e-mail a unui utilizator care controlează utilizatorul-agent solicitant.

Gazdă câmpul specifică gazda de internet și numărul portului de resurse solicitat de la URI-ul utilizatorului.

Dacă-Match câmpul este folosit pentru a face metode condiționale.

Dacă-Modificat-De vreme ce câmpul este folosit pentru a face o metodă condiționată. Dacă varianta solicitată nu este modificată în timpul specificat, entitatea nu va fi returnată de pe server.

Dacă-Niciunul-Se potrivește câmpul permite actualizarea eficientă a informațiilor din cache cu o suprasarcină minimă pentru tranzacție.

Dacă-Range câmpul permite clienților să primească o parte din entitatea lipsă sau, în caz contrar, clienții pot cere să trimită întreaga entitate nouă.

Dacă-Nemodificat-De vreme ce câmpul permite serverului să efectueze operația solicitată dacă nu a fost modificat de la ora specificată în acest câmp.

Max Atacanti câmpul oferă mecanisme cu metode TRACE și OPTIONS pentru a limita proxy-urile sau gateway-urile de redirecționare a cererii.

Autorizare proxy câmpul permite clientului să identifice pentru a securiza proxy.

Gamă câmpul specifică entitățile HTTP din mesajele HTTP reprezentate ca o secvență de octeți. Solicitarea de preluare HTTP solicită una sau mai multe sub-gamă de entități folosind metode GET.

Referitor câmpul permite clienților să specifice adresa URI a resursei din care se găsește Request-URI.

T.E. câmpul indică codul de transfer al extensiei pe care îl poate accepta în răspuns. În plus, indică dacă va accepta câmpuri de remorcă în codare de transfer în bloc.

Agent utilizator câmpul conține informații despre agentul utilizator solicitant.

Antet de răspuns HTTP

Câmpul antet răspuns permite serverului să treacă informații suplimentare prin răspunsuri, altele decât răspunsul simplu din linia de stare.

Structura antetului răspunsului arată astfel:

Accept-Range câmpul permite serverelor să indice acceptarea cererilor de interval de resurse.

Vârstă câmpul indică expeditorul perioada aproximativă de timp de când serverul a răspuns.

ETag câmpul oferă valoarea curentă a etichetei de entitate pentru o solicitare.

Locație câmpul redirecționează destinatarii către alte locații decât Request-URI pentru a finaliza identificarea unei noi resurse.

Proxy-Autentificare câmpul este o includere obligatorie pentru răspunsul de autentificare proxy.

Reîncercați-După câmpul este utilizat ca răspuns atunci când un serviciu este indisponibil pentru a indica durata perioadei pentru care serviciul va rămâne indisponibil pentru client.

Server câmpul conține informații despre software-ul utilizat de server pentru a gestiona cererile.

Varia câmpul indică câmpul de solicitare care determină dacă un cache este eligibil pentru a utiliza răspunsul unei cereri fără revalidarea răspunsului.

WWW-Autentificare câmpul sunt utilizate atunci când un mesaj de răspuns este neautorizat.

Câmpurile de antet de entitate definesc metainformații despre corpul entității sau resursa solicitată. Formatul antetului de entitate arată astfel:

Permite câmpul listează setul de metode acceptate de resursele identificate Request-URI.

Codificarea conținutului câmpul este folosit ca modificator de tip media.

Conținut-Limba câmpul descrie limbajul natural pentru clienții unei entități.

Conținut-Lungime câmpul indică dimensiunea unei entități reprezentată în număr zecimal.

Conținut-Locație câmpul furnizează locația resursei pentru o entitate atunci când aceasta este accesibilă dintr-o altă locație decât Requested-URI.

Conținut-MD5 câmpul oferă verificarea integrității mesajului (MIC) folosind un rezumat MD5 pe corpul entității.

Gama de conținut câmpul specifică locul în care trebuie aplicat corpul parțial al întregului organism al entității.

Tipul de conținut câmpul indică dacă tipul media al organismului entității este trimis destinatarului sau metoda GET este utilizată pentru a trimite cereri.

Expiră câmpul furnizează data/ora după care răspunsul devine învechit.

Modificat ultima dată câmpul indică data și ora ultimei modificări a variantei.

Ordinea în care numele câmpului apare în antet atunci când este primit este nesemnificativă. În mod convențional, anteturile generale sunt plasate mai întâi, urmate de antetul de cerere sau de răspuns cu antetul de entitate la sfârșit.

Notificare privind drepturile de autor: Vă rugăm să nu copiați sau să traduceți acest articol fără permisiunea prealabilă scrisă a site-ului

HTTP Debugger este un analizor HTTP fără proxy pentru dezvoltatori, care oferă posibilitatea de a captura și analiza anteturi HTTP, cookie-uri, parametri POST, conținut HTTP și anteturi CORS din orice browser sau aplicație desktop. Interfață de utilizare minunată și foarte ușor de utilizat. Nu este un proxy, nu există probleme de rețea!

În acest articol ne vom uita la ce sunt necesare antete, fără a intra în detaliu despre cine este responsabil pentru ce. Rolurile celor mai comune titluri vor fi descrise în articolele următoare.

Toate articolele din serie:

  • Ce sunt anteturile HTTP? Teoria generală.

HTTPînseamnă HyperText Transfer Protocol. Un protocol este un set de reguli prin care diferite dispozitive fac schimb de date. A fost creat în anii 1990. Acum este folosit aproape peste tot pe Internet. Tot ceea ce vedeți în fereastra browserului dvs. a fost obținut prin acest protocol. Anteturile http sunt poate principalul lucru în comunicarea între dispozitive. Ele transmit informații de bază despre conexiunea care se stabilește și despre informațiile transmise prin această conexiune.
Să aruncăm o privire la diagrama de comunicare între cele două dispozitive. Lăsați aceste dispozitive să fie computerul dvs. și un server de pe Internet:

După cum puteți vedea, browserul a trimis o solicitare http. Ar putea arăta cam așa:

GET /other-19 HTTP/1.1
Gazdă: www.scriptsite.ru
Agent utilizator: 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)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: ru,en-us;q=0.7,en;q=0.3
Acceptare-Codificare: gzip,deflate
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Păstrați în viață: 300
Conexiune: păstrați-vă în viață

În acest caz, prima linie este linia de solicitare, toate celelalte linii sunt anteturi http care conțin informații suplimentare despre cerere, despre clientul care solicită aceste informații și despre multe alte lucruri.
Ca răspuns la solicitarea noastră, serverul poate trimite următoarele antete:

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 (24.09.2007)

X-Powered-By: PHP/5.2.5

Set-Cookie: PHPSESSID=ft47gokfee6amv3eda3k1p93s3; cale=/

Cache-Control: fără stocare, fără cache, revalidare obligatorie, post-verificare=0, pre-verificare=0

Pragma: fără cache

Keep-Alive: timeout=10, max=1024

Conexiune: Keep-Alive

Transfer-Codificare: fragmentat

Tip de conținut: text/html

Prima linie este linia de stare. Rândurile rămase sunt anteturi. Diagrama a arătat că și conținutul paginii este încărcat. Dar acest conținut nu este afișat de obicei în pluginurile de vizualizare antet. Iar conținutul paginii este doar un caz special. Conform protocolului, pagina nu trebuie neapărat transmisă. În schimb, pot fi transmise o imagine, un fișier de sunet și un videoclip. Și toate vor avea titluri foarte diferite.

Cum să vezi antetele http?

Pentru a vedea anteturile http, recomand următoarele plugin-uri pentru browserul Firefox:

Dacă utilizați browserul Chrome, puteți vizualiza toate informațiile făcând clic pe butonul de setări - instrumente - instrumente pentru dezvoltatori. fila Rețele.
Nu pot da niciun sfat utilizatorilor browserului Opera, deoarece nu sunt prieten cu acest browser. Odată ce pluginurile sunt instalate și rulează, încercați să reîmprospătați pagina. Veți vedea imediat liste uriașe de solicitări și răspunsuri prin care browserul dumneavoastră a comunicat cu serverul.

Antetele HTTP și accesul la ele în php

Dacă sunteți dezvoltator PHP, puteți accesa anteturile cererii folosind funcția getallheaders(). Pentru a înțelege cum funcționează, să rulăm următorul cod:

Și obținem o imprimare a matricei de antet.

Dar mai des sunt accesate prin variabila globală $_SERVER. Aproape fiecare antet http are un nume de element similar în această variabilă, format conform principiului HTTP_header_name. Deci, pentru același „User_Agent” există o variabilă $_SERVER[‘HTTP_USER_AGENT’];

Pentru a obține anteturile pe care serverul le va trimite utilizatorului, este utilizată funcția headers_list(). De regulă, serverul compune anteturile necesare lipsă la sfârșitul tuturor scripturilor. Prin urmare, această matrice va conține anteturile fie cele pe care serverul le-a creat înainte de a începe executarea scriptului (și nu vor fi modificate), fie cele pe care le-am setat manual. Acestea pot fi setate manual folosind funcția header ("header text");
Să rulăm următorul cod:

Vom vedea o imprimare a antetelor gata de a fi trimise în momentul în care funcția este apelată:

Primul antet a fost setat automat și poartă numele serverului pe care rulează scriptul. Al doilea a fost instalat manual de noi. Dacă browserul avea nevoie de antetul „Fruit”, l-ar lua din răspunsul http al serverului și l-ar folosi. Dar, deoarece browserul nostru nu are nevoie de el, pur și simplu ignoră linia pe care nu o înțelege.

Structura cererii HTTP

Cererea noastră arată astfel:

Prima linie din ea, așa cum am menționat mai devreme, este linia de interogare. Este format din trei părți:

  • metodă(metoda) - indică ce tip de cerere. Cele mai comune metode: GET, POST, HEAD. Despre ele vor fi scrise în paragraful următor.
  • cale(cale) - de obicei aceasta este partea URL-ului care vine după domeniu. De exemplu, dacă introduceți http://www.scriptsite.ru/about/ în bara de adrese, valoarea căii va fi /about/.
  • protocol(protocol) — protocolul utilizat. Constă de obicei din „HTTP” și versiunea protocolului. De obicei, browserele moderne folosesc versiunea 1.1

Urmează anteturile sub formă de șiruri de format „Nume: valoare”.
Apropo, datele cookie sunt transmise și în această solicitare ca unul dintre anteturi. Majoritatea acestor linii sunt opționale. Interogarea poate fi redusă la doar două linii:

GET /article/show/4/ HTTP/1.1

Gazdă: scriptsite.ru

Metode de solicitare

OBȚINE

O solicitare de obținere este de obicei folosită pentru a solicita un document și pentru a transmite niște parametri.
Aceasta este metoda principală folosită pentru a obține pagini HTML, imagini, fișiere CSS și JavaScript etc.
Datorită faptului că parametrii pot fi orice, iar serverul nu are restricții cu privire la modul în care pot fi procesați, metoda de solicitare a datelor este adesea folosită pentru a transfera informații. De exemplu, vom avea o formă ca aceasta

În acest caz, acești parametri vor fi vizibili în bara de adrese a browserului.

POST

Post este metoda folosită pentru a trimite date către server. Deși puteți trimite date către server folosind metoda GET prin bara de adrese a browserului, în majoritatea cazurilor este de preferat să folosiți POST. Trimiterea unor cantități mari de date prin GET este nepractică. În plus, GET are unele limitări care nu permit, de exemplu, publicarea acestui articol pe site-ul meu doar printr-o singură linie de browser. Solicitările POST sunt cel mai adesea folosite pentru a trimite formulare web. Să modificăm formularul din exemplul anterior pentru a-i oferi o metodă POST

Cele mai bune articole pe această temă