Использование if
настоятельно не рекомендуется автором Nginx Игорем Сысоевым, особенно для проверки существования файлов.Чтобы обеспечить некоторые средства для решения задач такого рода, он ввел директиву try_files
server {
listen 80;
root /var/your/gae/project/root;
location / {
try_files $uri @gae;
}
location @gae {
proxy_pass http://gae;
}
}
Аргументы try_files
- это список шаблонов файлов (вы можете использовать переменные, как в нашем примере) для тестированиядля существования (например, вы можете проверить $uri $uri.html $uri.htm
по очереди), а последним аргументом является именованное местоположение, на которое Nginx перенаправляет, если существующий файл не найден.