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

Обратный прокси nginx без базового URL

У меня есть приложение, в котором я не могу настроить базовый URL. Допустим, его URL-адрес 192.168.1.100:8011

Я хочу настроить nginx, чтобы я мог ввести URL-адрес, например 192.168.1.100/myappи он переходит в другое приложение.

Конфигурации, к которым я привык, работают только тогда, когда у меня есть базовый URL. Например, если у меня есть приложение на 192.168.1.100:8011/myapp и я хочу использовать nginx для использования 192.168.1.100/myapp, У меня нет проблем, но по-другому я не могу.

Это возможно ?

Вот что я сделал для перенаправления http://example.com/app к http://192.168.1.24:8080/ (example.com/app - это адрес WAN, а 192.168.1.24:8080 - адрес LAN)

location /app/ {
    proxy_pass http://192.168.1.24:8080/;
    proxy_redirect http://192.168.1.24:8080/ http://example.com/app/;


    proxy_set_header Host $host;
    proxy_set_header Referer $http_referer;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $remote_addr;
    proxy_set_header X-Forwarded-Proto $scheme;
}

Вы можете использовать правило перезаписи:

location /myapp/ {
    rewrite /myapp(.*) /$1 break;
    proxy_pass http://192.168.1.100:8011
}

Это отправит URL-адреса типа /myapp/main/ на бэкэнд как /main/.