@4ooper

Обработка всех url nginx?

Доброго времени суток.
Пытаюсь разместить фронт-енд и бэк-енд на сервере, с бэк-ендом все работает, но возникла проблема с фронт-ендом(ангуляр), дело в том что у меня есть несколько страниц в ангуляр приложении, но nginx почему то обрабатывает только корневой домен (/). Как сделать так что бы nginx перенаправлял все запросы на angular приложение, и ангуляр сам решал что показывать?
  • Вопрос задан
  • 154 просмотра
Решения вопроса 1
Maksclub
@Maksclub
maksfedorov.ru
Как сделать так что бы nginx перенаправлял все запросы на angular приложение, и ангуляр сам решал что показывать?

Так и сделать — все запросы кроме файлов направить на index.html
location / {
        try_files $uri $uri/ /index.html =404;
    }


Но надо честь, что это и бекендовые запросы отправит на index.html
ЧТобы исключить часть путей, например /api/... то сделайте так:
location ~ ^/(api|metrics) {
        proxy_set_header X-Real-IP $remote_addr;
        # http://backend — это докерный хост бекенда, у вас может быть что-то другое, например проксирвоание на php-fpm или ip
        proxy_pass http://backend:8001;
    }

    location / {
        try_files $uri $uri/ /index.html =404;
    }
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы