Вот чего я хотел бы добиться:
/api/...
должен быть направлен на обратный прокси/static/...
должен подаваться из /html/static/pub
/html/app/pub
ИЛИ вернуться к /html/app/pub/index.html
Изменение структуры папок /html
в настоящее время не вариант.
Вот как сейчас выглядят блоки моего местоположения:
root /html/app/pub/;
location /api/ {
# proxy details...
}
location ~* /static/(.*) {
try_files /html/static/pub/$1 =404;
}
location / {
try_files $uri /index.html;
}
При такой настройке требования (1) и (3) выполняются, а (2) - нет. Любой запрос, сделанный на любой путь в пределах /static
возвращается с HTTP 404. В журнале nginx ошибок нет, запрос просто регистрируется как Not Found.
Я пробовал много разных перестановок, каждая из которых нарушала хотя бы одно из требований; это самое близкое к тому, что я ищу. Я просмотрел все статьи, которые мог найти в Google (90% из которых используют буквально одни и те же фрагменты примеров), но не смог найти решения этой проблемы.
Заранее спасибо.
Решено:
location ~* /static/(.*) {
root /html/static/pub/;
try_files /$1 =404;
}