Nginx: Как переписать URL-адрес только для определенного каталога - PullRequest
0 голосов
/ 18 января 2019

Я использую nginx для обратного прокси. Я переписываю каталог, используя псевдоним. В моем каталоге псевдонимов есть файлы сборки Angular 2, использующие маршрутизацию html5. Поэтому, когда пользователь обновит страницу, он должен переписать файл index.html, присутствующий только в этом каталоге.

" панель управления перезаписана псевдонимом"

Я уже попробовал "try_files $ uri $ uri / /index.html = 404;" но это относилось к index.html внутри основного каталога.

Я также пытался указать абсолютный путь, но, тем не менее, он не работал.

server {
    listen 80;
    server_name xx.xxx.xx.xxx;
    location / {
        proxy_pass http://localhost:4000;
        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;
    }
    location /control-panel {
        alias /var/www/html/soundoff-admin-dev/dist;
        # here rewrite should override with index.html inside "dist" directory
     }
}

1 Ответ

0 голосов
/ 18 января 2019

Заимствовано из https://stackoverflow.com/a/50863128/1264360

Попробуй,

 location /control-panel {
    root /var/www/html/soundoff-admin-dev/dist;
    try_files $uri $uri/ /control-panel/index.html;
 }
...