Доброго дня!
Возник вопрос, возможно ли воплотить такую схему работы:
Есть локейшен, с которого отдаются файлы после rewrite.
Файлы могут быть в двух разных папках на сервере, нужно отдать со второй папки, если в первой 404.
Вроде эту магию может сделать try_files.
Нашлась статья про каскадные проверки, но выглядит чуть монструозно http://linuxplayer.org/2013/06/nginx-try-files-on-multiple-named-location-or-server
Возможно ли делать например такую штуку с одним правилом rewrite в основном локейшене и если 404 - то идем в other_location:
location /images/ {
root /var/local/images/
rewrite '^/avatar/256x256/([0-9]*)(\d{2})(\d{2})(\d{2})\.(jpg|png)' /avatars/$4/$3/$2/$1$2$3$4_256x256.$5 break;
try_files $uri @other_location;
}
location @other_location {
root /var/local/images/
rewrite '^/avatar/256x256/([0-9]*)(\d{2})(\d{2})(\d{2})\.(jpg|png)' /avatars/new_avatar/$4/$3/$2/$1$2$3$4_256x256.$5 break;
}
Или в other_location следует делать rewrite уже измененного uri в первом локейшене?