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

Как правильно переписать URL в nginx

У меня один общедоступный IP-адрес, и мне нужно поддерживать два веб-сервера, поэтому я решил создать обратный прокси-сервер. Мой прокси-сервер использует NGNIX, а серверный - Apache.

10.1.1.3 - это IP-адрес Nginx

10.1.1.5 - это ip Apache

Я хочу, чтобы одно приложение было доступно по адресу domain.com/project, а другое - по адресу domain.com/application2.

Я стараюсь, чтобы конфигурация nginx была как можно проще, поскольку я все еще учусь:

server{ 
     listen 80;

     location /project {
         rewrite /project / break;
         proxy_pass http://10.1.1.5:80;
     }
}

Я пытаюсь сделать возможным доступ к приложению проекта на веб-сервере Apache, но проблема в том, что у приложения проекта нет URL-адреса 10.1.1.50:80/project, поэтому я пытаюсь его переписать. Это работает, я могу получить доступ к серверу, написав в domain.com/project, но если я попытаюсь ввести любую ссылку, например, создание учетной записи, она изменит ссылку на domain.com/account/register, а для прокси-сервера требуется domain.com/project/account / зарегистрироваться на работу. Можно ли сохранить часть URI проекта для дальнейших запросов?

server{ 
     listen 80;
     server_name domain.com;
     location ~ ^/project?(.*) 
     {
            proxy_pass http://10.1.1.5:80$1$is_args$args;
     }
}

Наверное, вам нужно что-то подобное.