Съдържание
Един от най -ефективните методи за намаляване на използването на честотната лента от уеб сървъра и в същото време увеличаване на скоростта на предаване на съдържание е компресирането на уеб страниците и като цяло всички резултати, които се връщат на клиентите. Компресирането на уеб съдържание може да се извърши с помощта на различни методи.Какво представлява модулът mod_deflate?
Модулът Apache mod_deflate позволява на сървъра да доставя компресирани файлове в движение. Обикновено се използва за подобряване на производителността на уебсайт, в смисъл на по -малко време за изтегляне на посетителя.
Когато се направи заявка до уебсайт, Apache подготвя отговора, който ще бъде изпратен на посетителя на няколко етапа. Един от етапите се състои в промяна или трансформиране на данните с помощта на изходни филтри. Модулът mod_deflate, веднъж зареден и активиран, се вмъква като филтър, наречен DEFLATE, във веригата на изходните филтри на Apache, който компресира всички данни, които преминават през него.
Например, можете да зададете ниво на компресия, да ограничите компресията до определени MIME типове или да предотвратите получаването на компресирани данни от сървъра на някои уеб браузъри, посетители или други HTTP проблеми.
Модулът mod_deflate предлага и входен филтър, който може да се използва за декомпресиране на компресираните данни в HTTP заявки.
Процесът на конфигуриране, който ще разработим, може да бъде вмъкнат в контекста на основния Apache сървър или може да бъде записан във файл, който ще бъде зареден от основния сървър или в конфигурацията на виртуален хост.
Активирайте модула mod_deflate
mod_deflate може да се активира като всеки друг Apache модул от /etc/httpd/conf/httpd.conf файл
LoadModule deflate_module модули / mod_deflate.so
Имайте предвид, че тази директива може да съществува само в основната конфигурация на сървъра.
Активирайте компресията
Компресирането на данни може да бъде разрешено за всички данни, преминаващи през DEFLATE филтъра или в зависимост от избраните MIME типове.
За да разрешим компресиране за всеки тип съдържание, трябва да въведем следната директива:
SetOutputFilter DEFLATE
Като алтернатива можете да посочите типа на файла, който искате да компресирате от изходния филтър DEFLATE от директивата AddOutputFilterByType. Вижте следните примери:
AddOutputFilterByType опровергавам текст / обикновен AddOutputFilterByType опровергавам текст / HTML AddOutputFilterByType опровергавам текст / XML AddOutputFilterByType опровергавам текст / CSS AddOutputFilterByType опровергавам заявление / XML AddOutputFilterByType опровергавам заявление / XHTML + XML AddOutputFilterByType опровергавам заявление / RSS + XML AddOutputFilterByType опровергавам заявление / JavaScript AddOutputFilterByType опровергавам заявление / х- javascript
Регулирайте нивото на компресия
Като цяло алгоритъмът за компресиране на дефлацията е достатъчно бърз, поради което настройката на нивото на компресия на максимум (9) няма да причини забележими проблеми, дори при сравнително стар хардуер.
DeflateCompressionLevel 9
Персонализирани правила за проблемни браузъри
Компресирането може да бъде включено или изключено за текстови / html типове за браузъри, които могат да причинят проблеми или просто да ограничат разбирането.
BrowserMatch Mozilla / 4 gzip-only-text / html BrowserMatch Mozilla / 4.0 [678] no-gzip BrowserMatch bMSIE! No-gzip! Gzip-only-text / html
Ползи от компресията
Алгоритъмът за изпускане може да компресира текст много бързо и с много високо съотношение на ефективност. От друга страна, той е почти безполезен, когато се използва за компресиране на изображения, които са подготвени за мрежата, като PNG, JPEG.webp, GIF.webp и като цяло всички други типове изображения, в които данните вече са компресирани. Същото важи и за компресираните аудио файлове, като MP3, видео, PDF документи и всички други файлове вече са компресирани.Хареса ли ви и помогнахте на този урок?Можете да възнаградите автора, като натиснете този бутон, за да му дадете положителна точка