Одним из простых способов справиться с этой ситуацией является использование переменных.Вы можете легко импортировать файл, чтобы установить текущую последнюю версию.Вам нужно будет перезагрузить конфигурацию nginx при обновлении версии с помощью этого метода.
- Создать простой файл конфигурации для установки последней версии
# /path/to/latest.conf
set $latest 15;
- Импортируйте свою последнюю конфигурацию в блок сервера и добавьте местоположение для прокси-сервера в последнюю версию.
server {
listen 80 default_server;
server_name localhost;
# SET LATEST
import /path/to/latest.conf;
location / {
proxy_pass http://s3host;
expires 30d;
}
# Note the / at the end of the location and the proxy_pass directive
# This will strip the "/latest/" part of the request uri, and pass the
# rest like so: /$version/$remaining_request_uri
location /latest/ {
proxy_pass http://s3host/$latest/;
expires 30d;
}
...
}
Еще один способ сделать это динамически - использовать lua для написания сценария такого поведения.Это немного сложнее, поэтому я не буду вдаваться в подробности этого ответа.