Maison >Opération et maintenance >Nginx >Comment implémenter les informations d'en-tête de réponse d'opération Nginx

Comment implémenter les informations d'en-tête de réponse d'opération Nginx

王林
王林avant
2023-05-13 15:31:191840parcourir

Prérequis : Le module ngx_http_headers_module doit être compilé pour prendre en charge les opérations d'informations d'en-tête

add_header

signifie ajouter des informations d'en-tête personnalisées à l'en-tête de réponse, la commande est add_header name value [toujours] ;, vous pouvez Utilisé dans le contexte de http {}, serveur {}, emplacement {}, si dans l'emplacement {},
Uniquement lorsque le code d'état de la réponse est égal à 200, 201 (1.3.10), 204, 206, 301, 302, 303, 304, 307 (1.1.16, 1.0.13) ou 308 (1.13.0) prend effet. Si le paramètre toujours est spécifié, les informations d'en-tête ignoreront le code d'état et seront forcées d'être renvoyées dans toutes les réponses.

Remarque : Vous pouvez déclarer plusieurs instructions add_header. Si et seulement si le bloc actuel n'a pas d'add_header, les informations add_header déclarées par le supérieur seront héritées. Par exemple :

server {
 add_header a 123;

 location / {
  root /path;
 }

 location /download/ {
  add_header b 321;
 }
}

L'exemple ci-dessus, lors de l'accès au /download. / route , les informations d'en-tête telles que b 321 seront renvoyées, et lors de l'accès / routage, les informations d'en-tête a 123 spécifiées par le supérieur seront renvoyées.

add_trailer


signifie ajouter des informations d'en-tête personnalisées à la fin de l'en-tête de réponse. La commande est add_trailer name value [always];, qui peut être utilisée dans http {}, serveur {}, emplacement {}, si dans le contexte d'emplacement {}, ne prend effet que lorsque le code d'état de la réponse est égal à 200, 201, 206, 301, 302, 303, 307 ou 308. Si le paramètre toujours est spécifié, les informations d'en-tête ignoreront le code d'état et être obligé de revenir dans toutes les réponses.

Remarque : Vous pouvez déclarer plusieurs instructions add_trailer. Si et seulement si le bloc actuel n'a pas de add_trailer, les informations add_trailer déclarées par le supérieur seront héritées

Veuillez vous référer à l'exemple de add_header pour un exemple.

expires


Activez ou désactivez, ajoutez ou modifiez les champs "expires" et "cache-control" dans l'en-tête de réponse, l'instruction expire [modified] ou expire epoch | code d'état de réponse Il prend effet lorsqu'il est égal à 200, 201 (1.3.10), 204, 206, 301, 302, 303, 304, 307 (1.1.16, 1.0.13) ou 308 (1.13.0). Le paramètre de temps peut être un temps positif ou un temps négatif. L'heure indiquée dans le champ « expire » est calculée comme la somme de l'heure actuelle et de l'heure spécifiée dans time. Si le paramètre modifié (0.7.0,0.6.32) est utilisé, l'heure est calculée comme la somme de l'heure de modification du fichier et de l'heure spécifiée dans la directive time.

De plus, l'heure de la journée peut être précisée à l'aide du préfixe "@" (0.7.9, 0.6.34) : expire à 15h30

Le contenu du champ "cache-control" dépend du signe du heure spécifiée :

    L'heure est un nombre négatif - "cache-control: no-cache"
  • L'heure est un nombre positif ou 0 - "cache-control: max-age=t" t est le temps spécifié dans la commande, en secondes
  • Le paramètre
  • epoch définit "expires" sur la valeur "jeu 01 jan 1970 00:00:01 gmt" et "cache-control" sur "no-cache". Le paramètre

max définit "expire" sur la valeur "jeudi 31 décembre 2037 23:55:55 gmt" et "cache-control" sur 10 ans. Le paramètre

off désactive l'ajout ou la modification des champs d'en-tête de réponse "expires" et "cache-control".

La dernière valeur du paramètre peut contenir des variables (1.7.9) : Par exemple :

map $sent_http_content_type $expires {
 default   off;
 application/pdf 42d;
 ~image/   max;
}

expires $expires;

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer