gzip_proxied директива позволяет для следующих вариантов (не исчерпывающий):Каковы параметры для директивы gzip_proxied?
- истек
включает сжатие, если заголовок ответа включает в себя «Expires» поле со значением, которое отключает кэширование;- no-cache
Включает сжатие, если заголовок ответа включает в себя поле «Cache-Control» с параметром «no-cache»;- no-store
включает сжатие, если заголовок ответа включает в себя поле «Cache-Control» с параметром «no-store»;- private
Включает сжатие, если заголовок ответа включает в себя поле «Cache-Control» с «частным» параметром;- no_last_modified
Включает сжатие, если заголовок ответа не включает поле «Последнее изменение»;- no_etag
Включает сжатие, если заголовок ответа не включает поле «ETag»;- auth
Включает сжатие, если заголовок запроса включает в себя поле «Авторизация»;
Я не вижу разумной причины использовать большинство этих параметров. Например, почему должен был или нет прокси-запрос содержать заголовок Authorization
, или Cache-Control: private
, повлиять на то, хочу ли я его gzip?
Учитывая, что старые версии Nginx strip ETags from responses when gzipping them, я вижу случай использования для no_etag: если вам не Nginx сконфигурировано для генерации ETags для ваших сжат GZIP ответов, вы можете предпочесть, чтобы передать несжатый ответ с ETag вместо генерации сжатого без ETag.
Я не могу понять других.
Каковы предполагаемые варианты использования каждого из этих вариантов?
«* Стоимость процессора, пытаясь уменьшить их размер, вероятно, не является эффективным использованием ресурсов ресурса прокси-уровня *» - но мы не говорим о gzipping в прокси-слое, не так ли? Мы говорим о gzipping на бэкэнде Nginx, за некоторым прокси-слоем, который перенаправил запрос на этот бэкэнд Nginx; для прокси-уровня не требуется сжимать или разжимать сам ответ. (Не влияет на общую направленность вашей точки, просто нажимает.) –
Пункт 1 (о gzipping часто не стоит на кэшируемых ресурсах, потому что кэшируемые ресурсы часто уже минимизированы, а gzipping minified resources - пустая трата времени) чувствует себя очень слабым меня. В принципе это разумно, но я считаю, что это на практике неверно; люди, которые [измеряли влияние gzipping -минированного контента в другом месте на Stack Overflow] (http://stackoverflow.com/questions/807119/gzip-versus-minify), обнаружили, что gzipping все еще значительно уменьшает размер файла, даже когда контент gzipped уже включен. –
Баллы 2 и 3, с другой стороны, гораздо более убедительны! Если я могу предоставить прокси-серверы tl; dr: обычно требуется распакованная версия содержимого, которое они кэшируют, либо для обслуживания пользовательских агентов, которые не поддерживают gzip, либо для обслуживания запросов диапазона байтов. Поэтому, если они кэшируют его, прокси должны декомпрессировать ваш gzip-ответ, затрачивая процессорное время.Единственное преимущество, которое вы получаете взамен, - это сокращение использования пропускной способности между прокси-сервером и сервером, но в некоторых случаях (например, прокси-сервер и бэкэнд в одной и той же локальной сети) пропускная способность прокси-сервера может быть практически неограниченной. –