J'ai configuré Apache pour renvoyer une réponse 200 sans servir de fichier avec cette ligne de configuration
Redirect 200 /hello
Puis-je faire cela avec Nginx? Je ne veux pas servir un fichier, je veux juste que le serveur réponde avec un 200 (j'enregistre juste la demande).
Je sais que je peux ajouter un fichier d'index et réaliser la même chose, mais le faire dans la configuration signifie qu'il y a une chose de moins qui peut mal tourner.
Oui, vous pouvez
location / {
return 200 'gangnam style!';
# because default content-type is application/octet-stream,
# browser will offer to "save the file"...
# if you want to see reply in browser, uncomment next line
# add_header Content-Type text/plain;
}
Vous devez utiliser un 204 car Nginx ne permettra pas un 200 sans corps de réponse. Pour envoyer un 204 vous utilisez simplement la directive return to return 204;
à l'emplacement approprié.
Selon les définitions de code d'état, je pense que vous voulez que ce soit un 204, et non 200. Le besoin de 200 doit être avec une ressource dans la réponse, ou je soupçonne que la plupart des navigateurs sains seraient confus. L'autre que vous pouvez utiliser est 304, qui est pour le contenu mis en cache.
Pour compléter la réponse de @Martin Fjordval, soyez prudent si vous utilisez une telle configuration pour effectuer un bilan de santé.
Alors qu'un 204
Le code HTTP est sémantiquement parfait pour un contrôle de santé (indication de succès sans contenu), certains services ne le considèrent pas comme un succès.
À savoir, j'ai eu le problème avec Google Cloud Load-balancers .