Servizio per il controllo delle intestazioni del server HTTP

Per qualsiasi sito Web, è importante configurare correttamente le intestazioni HTTP. Sono stati scritti molti articoli sul tema dei titoli. Qui abbiamo riassunto l'esperienza accumulata e la documentazione RFC. Alcuni titoli sono obbligatori, altri sono obsoleti e altri ancora possono causare confusione e contraddizioni. Abbiamo realizzato un marsupio per controllo automatico delle intestazioni HTTP del server web. A differenza di molti altri servizi che mostrano semplicemente le intestazioni, questo servizio ti consente di:

  1. impostare il valore delle intestazioni standard;
  2. aggiungi le tue intestazioni personalizzate;
  3. specificare la versione del protocollo HTTP: 1.0, 1.1, 2 (controlla se HTTP/2 è supportato);
  4. specificare la modalità di richiesta, timeout e postdata da inviare al server;
  5. Il beanbag controlla anche la correttezza della risposta alle richieste If-Modified-Since, If-None-Match, se la risposta del server contiene Last-Modified o ETag.


Non pretendiamo di essere la verità ultima. Naturalmente potrebbero esserci delle deviazioni per i singoli contenuti e per i singoli progetti. Ma questo servizio ti dirà esattamente a cosa dovresti prestare attenzione e potrebbe esserti utile per modificare le tue intestazioni. Di seguito è riportato un elenco di ciò a cui presta attenzione il servizio di verifica. Perché è così, leggi negli articoli su Habré.

Intestazioni obbligatorie

  • Data
  • Content-Type che indica il set di caratteri per il contenuto testuale, preferibilmente utf-8
  • Compressione di codifica dei contenuti per il contenuto di testo

Intestazioni obsolete e non necessarie

  • Server con versione dettagliata del server web
  • X-Power-By
  • Versione X_ASPNET
  • Scade
  • Pragma
  • P3P
  • via
  • X-UA-Compatible

Intestazioni desiderabili per la sicurezza

  • X-Content-Type-Opzioni
  • Protezione X-XSS
  • Strict-Transport-Security
  • Referrer-Politica
  • Caratteristica-Politica
  • Content-Security-Policy o Content-Security-Policy-Report-Only per disabilitare script e stili in linea.

Intestazioni per la memorizzazione nella cache

Obbligatorio per contenuto statico con una lunga durata della cache ed altamente auspicabile per contenuto dinamico con una breve durata della cache.

  • Ultima modifica
  • Etag
  • Cache-Control
  • Variare
  • È importante che il server risponda correttamente alle intestazioni: If-Modified-Since e If-None-Match

HTTP / 2

Il server ora dovrebbe supportare HTTP/2. Per impostazione predefinita, il servizio controlla il funzionamento del server tramite HTTP/2. Se il tuo server non supporta HTTP/2, seleziona HTTP/1.1.

Fonte: habr.com

Aggiungi un commento