Исходные данные:
server {
...
location / {
...
}
location /api/v1/ {
...
}
location ~ "^(.+\.php)($|/)" {
...
}
}
Объявим заголовок , например:
add_header 'X-my-api-header' 'bla-bla-bla';
Требуется добавить этот заголовок для генерируемого api json или xml в location /api/v1/ .
Если заголовок добавить до описания правил для location, заголовок появляется, но для
всего ресурса. Если его добавить для location api или location /, заголовок отсутствует в ответе сервера, но появляется если поместить заголовок в location php. Тогда заголовок появляется во
всех ответах запросов к php-скриптам.
Так как API отдаёт данные в запрашиваемых форматах, пытался объявить заголовок для этих форматов, но тщетно. Возможно это происходит потому что выдачу данных генерирует php-скрипт. До этой задачки наивно полагал что знаю как работают настройки location.