J'ai une question très simple à poser aux experts de Nginx. C'est peut-être un bug.
Dans nginx 1.0.5, étant donné le nginx.conf suivant:
server {
server_name myserver;
location / {
uwsgi_pass 127.0.0.1:5001;
uwsgi_param HTTP_MY_CUSTOM_HEADER $http_my_custom_header;
include uwsgi_params;
}
}
Pourquoi cela fonctionne comme prévu ...
$ curl -H "My-Custom-Header: Yes" http://myserver/
... mais ce n'est pas le cas.
$ curl -H "MY_CUSTOM_HEADER: Yes" http://myserver/
Dans ce dernier cas, le paramètre est transmis à mon application uwsgi, mais ce n'est qu'une chaîne vide. Je sais que les en-têtes HTTP sont censés être insensibles à la casse, mais le comportement de nginx est inattendu lorsque l'en-tête ne suit pas le format habituel (casse du titre, traits de soulignement au lieu des tirets).
Quelqu'un avait-il le même besoin de capturer des en-têtes personnalisés? Des exemples de nginx.conf?
Peu importe, j'ai compris qu'il y avait un paramètre:
http://nginx.org/en/docs/http/ngx_http_core_module.html#underscores_in_headers