Hello! On Wed, Aug 03, 2016 at 11:54:16AM -0400, YuriV wrote:
> C учетом особенностей кода nginx эта директива тоже абсолютно бесполезна :( > - у неё те же самые параметры, что и у proxy_cache_bypass. Т.е. она точно > также не может полагаться на код ответа от бэка. Полёт вашей мысли причудлив и занимателен, но, вероятно, никому кроме вас - не понятен. Двайте я поясню, как оно работает, а вы уже решайте, насколько ваши мысли об этом совпадают с реальностью. И если вдруг совпадают - то поясните, что именно приводит вас к мысли о бесполезности. При использовании кеша есть два момента времени, в которые можно принимать какие-то решения. 1. Первый момент - когда nginx получил запрос от клиента и думает, что именно отвечать. В этот момент он может воспользоваться кешом, и, если там есть ответ, вернуть его клиенту. Если этого делать не надо - то есть директива proxy_cache_bypass, которая позволяет "пропустить" использование кеша. Но, очевидно, пытаться использовать что-либо из ответа бекенда в этот момент нельзя - т.к. к бекенду никто ещё не обращался. 2. Второй момент - когда nginx cходил на бекенд, получил ответ, и решает, сохранять ли его в кеш. В этот момент сохранение можно явно запретить с помощью директивы proxy_no_cache. И в ней вполне можно (и зачастую нужно) использовать то, что ответил бекенд. Ибо мы как раз решаем, сохранять ли полученный ответ. -- Maxim Dounin http://nginx.org/ _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru