У меня есть приложение django, работающее на http://localhost:12345. Я бы хотел, чтобы пользователь обращался к нему через url http://my.server.com/myapp. Я использую nginx для обращения к нему через прокси-сервер следующим образом:
... ...
server_name my.server.com;
location /myapp {
rewrite /myapp(.*) $1 break;
... ... # proxy param
proxy_pass http://localhost:12345;
}
... ...
Вопрос заключается в том, что при настройке, как указано выше, как заставить URL-адреса на моих страницах ответов иметь префикс "/myapp", чтобы nginx мог правильно их перенаправить в myapp. Например, URL-адреса на странице типа "/foo/far" должны быть изменены на "/myapp/foo/bar", чтобы разрешить прокси-сервер nginx для myapp. Какую настройку nginx нужно использовать для достижения этой цели?
Я могу использовать переменные параметров django для указания корневого url-префикса, но это не гибко, поскольку переменная должна быть изменена в соответствии с другой конфигурацией nginx (скажем, в один прекрасный день nginx может изменить suburl из "/myapp" to "/anotherapp" ).