У меня есть уже оптимизированное изображение JPEG на моем сервере 32,07 кБ (и на моем локальном компьютере), 800 пикселей * 534 пикселей, если я запрашиваю его через браузер, оно сохраняет ту же ширину * высоту, но его размер становится меньше 17,97 КБ и становится пиксельный.
Я проверил конфигурацию Apache:
# LoadModule deflate_module modules/mod_deflate.so
Заголовки ответа:
HTTP/1.1 200 OK Date: Sat, 30 Jan 2016 11:31:50 GMT Server: Apache Last-Modified: Sat, 26 Dec 2015 11:56:02 GMT ETag: "804c-527cbc1833880" Accept-Ranges: bytes Content-Length: 32844 Content-Type: image/jpeg Connection: keep-alive
Я работаю в среде LAMP, установленной на сервере VPS. Я отправил запрос в OVH, чтобы спросить их, сжимают ли они изображения на более высоком уровне, но все еще ждут ответа.
Есть ли другие места для изучения вместо Apache?
Еще одна вещь, я могу поспорить, это не связано с браузером, потому что я получил тот же результат в Firefox и Chrome.
Сжатый или несжатый
Content-Length: 32844
соответствует размеру вашего jpeg, и нет заголовка о том, что файл сжат. Я полагаю, вы также тестировали это на своей рабочей станции?
Как вы подтверждаете
Используйте curl или wget, чтобы загрузить изображение на свой компьютер и убедиться, что размер не изменился, при условии, что ваше соединение HTTPS и ничто другое не может перехватить обмен данными, например прокси или антивирус. Прокси-серверы, безусловно, могут изменять размер изображений.
Прокси-тестирование
Предполагая, что у вас есть модуль mod_headers в вашей установке apache, добавьте в конфигурацию apache следующее, чтобы прокси оставили файл в покое.
header set cache-control "private, max-age=0, no-cache, no-transform, no-store"
header set Pragma no-cache
Это должно быть <Directory>
раздел, относящийся к тестируемому формату jpeg.
Имейте в виду, что любой контент, обслуживаемый этими заголовками, не будет кэшироваться, что снизит производительность. Возможно, стоит прочитать заголовки управления кешем.