Я пытаюсь определить конфигурацию сервера nginx следующим образом, но точное местоположение никогда не запускается, а запускается только общий путь. Таким образом, заголовок ответа всегда имеет вид Access-Control-Allow-Origin. Что я хочу, так это то, что когда я посещаю "curl -v localhost:8081", он должен возвращать меня только с заголовком XYZ, потому что это точное совпадение, но вместо этого он возвращает общий. Что я делаю неправильно?
server {
listen 8081;
server_name localhost;
#index index.html;
root /usr/share/nginx/wallet;
location / {
try_files $uri /index.html /example.html =404;
add_header Access-Control-Allow-Origin *;
}
location = / {
add_header XYZ "xyxxxxxxxxxxxxx";
}
}

Местоположение с точным совпадением — это первое место для обработки запроса, но не последнее место для обработки запроса.
Nginx внутренне переписывает URI на /index.html и обрабатывает этот новый запрос в общем блоке местоположения.
Вы можете заставить Nginx обрабатывать весь запрос в пределах точного местоположения, добавив оператор try_files.
Например:
location = / {
try_files /index.html =404;
add_header XYZ "xyxxxxxxxxxxxxx";
}