Недавнее обновление zlib из-за дыра в безопасности кажется, вызывает серьезную проблему при обслуживании PHP-FPM 8.0 через nginx на Ubuntu focus. Любые запросы с кодировкой gzip терпят неудачу прямо в начале ответа, хотя nginx регистрирует запросы как успешные и с правильным размером. Если я делаю запросы без Принять кодировку
заголовок, он работает отлично.В качестве обходного пути я пытаюсь отключить всю поддержку gzip, но она кажется удивительно стойкой... До сих пор я пробовал эти настройки в nginx:
сжатие выключено;
fastcgi_buffering выключен;
add_header Accept-Encoding "";
proxy_set_header Accept-Encoding "";
и я также проверил, что нет других директив, которые снова включают их, выбирая нгинкс-Т
вывод.
Однако, если я сбрасываю заголовки запросов из PHP (т. е. после того, как они прошли через nginx), я все еще вижу этот заголовок принятия:
Accept-Encoding: deflate, gzip, br, zstd
так что nginx нет удаление его из запроса до того, как он будет передан в PHP-FPM. Я пытался установить эти директивы на уровне сервера и местоположения с теми же результатами.
В PHP я отключил всю буферизацию вывода, но не представляется возможным отключить zlib без перекомпиляции.
Как я могу заставить nginx удалить этот заголовок запроса, чтобы ни nginx, ни PHP не сжимали ответы?