Назад | Перейти на главную страницу

nginx proxy_pass один файл

У меня есть единственный файл, который я хочу разместить, но не размещаю. Поэтому я пишу это в своем блоке сервера nginx:

location /d-p27.js {
  proxy_pass https://data.example.com/p/piwik.js;
}

После перезагрузки конфигурации nginx, когда я тестирую это с помощью curl -I https://another.example.com/d-p27.js, Я получаю 404. Журналы nginx ничего больше не говорят.

Итак, я пробую это:

location /d-p27.js {
  rewrite ^/d-p27.js$ /p/piwik.js break;
  proxy_pass https://data.example.com/;
}

Это тоже 404-е годы. Какие-либо предложения?

Решение

Благодаря @RichardSmith решение состоит в том, чтобы просто использовать точное совпадение, чтобы избежать путаницы с другими регулярными выражениями:

location = /d-p27.js {
  proxy_pass https://data.example.com/p/piwik.js;
}