Как раздавать фронтенд на Nginx из разных папок
Имеется такая конфигурация Nginx.Состоит из двух блоков server. Во втором блоке отдается фронтенд. Мне нужно отдавать фронтенд из разных папок в зависимости от url. Запрос типа example.ru/ отдает frontend1, а запрос типа example.ru/frontend2 соответственно отдает frontend2. Перепробовал уже самые разные комбинации настроек,взятых из похожих вопросов на stackoverflow, но у меня ничего не срабатывает. Папка "frontend2" в каталоге "name" есть.
server {
listen 80;
server_name api.example.ru;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
server {
listen 80;
server_name example.ru
location / {
root /home/name/frontend1;
try_files $uri $uri/ /index.html;
}
location /frontend2/ {
root /home/name/;
try_files $uri $uri/ /index.html;
}
Ответы (1 шт):
Автор решения: Aleksey Vaganov
→ Ссылка
Следующий location будет отдавать все URL начинающиеся с /frontend2 из папки /home/name/frontend2
location ^~ /frontend2/ {
root /home/name/frontend2;
try_files $uri $uri/ /index.html;
}
После внесения изменений не забудьте перечитать конфиг.