C допомогою модуля сервера Apache mod_deflate ви можете прискорити для клієнта завантаження файлів з вашого веб-сервера. Модуль mod_deflate надає вихідний фільтр DEFLATE. який може стискати дані, що відправляються сервером клієнтові.
Це зменшує час і обсяг даних, що пересилаються по мережі, що в результаті робить завантаження контенту браузером швидше.
Для використання mod_deflate спершу переконайтеся, що модуль включений в дистрибутив вашого HTTP сервера Apache (за замовчуванням він встановлений у всіх сучасних дистрибутивах).
Налаштування сервера
Відкрийте файл конфігурації httpd.conf:
Додайте наступний рядок:
LoadModule deflate_module modules / mod_deflate.so
Додайте наступну директиву в блок
AddOutputFilterByType DEFLATE text / html text / plain
text / xml
...
...
Ця конфігурація буде стискати тільки текстові, html і xml файли. А ось конфігурація mod_deflate одного з моїх робочих серверів:
Після внесення змін збережіть файл конфігурації і перезапустіть сервер Apache. Тепер всі файли цих типів будуть стискатися.
Також ви можете задати певний каталог, де повинні стискатися всі файли. Наприклад, каталог / static / help /:
SetOutputFilter DEFLATE
У реальному житті немає необхідності стискати такі файли, як mp3 або файли картинок. Ось приклад конфігурації, яка забороняє використовувати стиснення для подібних файлів:
SetOutputFilter DEFLATE
SetEnvIfNoCase Request_URI \. (?: gif | jpe? G | png) $ no-gzip dont-vary
SetEnvIfNoCase Request_URI \. (?: exe | t? Gz | zip | bz2 | sit | rar) $ no-gzip dont-vary
SetEnvIfNoCase Request_URI \ .pdf $ no-gzip dont-vary
SetEnvIfNoCase Request_URI \ .avi $ no-gzip dont-vary
SetEnvIfNoCase Request_URI \ .mov $ no-gzip dont-vary
SetEnvIfNoCase Request_URI \ .mp3 $ no-gzip dont-vary
SetEnvIfNoCase Request_URI \ .mp4 $ no-gzip dont-vary
SetEnvIfNoCase Request_URI \ .rm $ no-gzip dont-vary
І пам'ятайте, що стиснення даних призводить до додаткового навантаження на CPU і пам'ять, як вашого сервера, так і машини клієнта. Тому вам треба чітко визначити те, що необхідно стискати.
SetOutputFilter DEFLATE
# Netscape 4.x
BrowserMatch ^ Mozilla / 4 gzip-only-text / html
# Netscape 4.06-4.08
BrowserMatch ^ Mozilla / 4 \ .0 [678] no-gzip
BrowserMatch \ bMSI [E]! No-gzip! Gzip-only-text / html