Tente isto:
server {
listen 80;
location = / {
proxy_pass http://127.0.0.1:5000/;
}
location ~ ^\/(.*)$ {
proxy_pass http://127.0.0.1:5000/?lat=$1&lon=$1;
}
}
O segundo bloco de localização captura o "berlin" se example.com/berlin for reqested e então isso é passado para o websever como parâmetros de consulta.
Mas, por favor, note que isso parece ser uma péssima idéia, já que isso corresponderia a qualquer coisa que não esteja solicitando sua home page ( /
). Assim, mesmo a solicitação de example.com/index.html seria passada para o servidor da Web como /?lat=index.html&lon=index.html. Você poderia evitar isso usando algum tipo de prefixo como example.com/city/berlin ou aprimorando a regex do segundo bloco de localização para não corresponder a determinadas coisas como index.html