Забрзување на веб страна со .htaccess

Thumbnail PHP/Code

Оптимизирајте ги перформансите на вашата веб страна со овие неколку совети кои се однесуваат на употреба на .htaccess датотека за on-the-fly прилагодување на Apache серверот и извршување на одредени инструкции.

Според најдобрите практики за оптимизација на Yahoo и на Google со помош на .htaccess датотека ќе презентирам имплементација на советите за компресија на веб страниците, додавање на expires хедери, и исклучувањето на ETags.

Оптимизација

Прво и најосновно за добивање на исклучително добри перформанси на една веб страница е да се овозможи gzip компресија. Со тоа може да се добие дури и до 90% намалување на големината на веб страната, а со тоа и времето на преземање на истата. Истотака, важно е и кеширањето на сликите, јаваскриптите, CSS стиловите и слично. Тоа го постигнуваме со додавање на expires хедери со големо времетраење, секако во зависност од тоа колку сметате дека еден вид на датотеки нема да биде променет во текот online casino на времето.

Примена

Додадете го следниот код во вашата .htaccess датотека:

# Доколку модулот deflate е вклучен, односно вчитан, вклучи компресија за следните видови датотеки
<IfModule mod_deflate.c>
 AddOutputFilterByType DEFLATE application/x-js
 AddOutputFilterByType DEFLATE application/javascript
 AddOutputFilterByType DEFLATE application/x-javascript
 AddOutputFilterByType DEFLATE text/plain
 AddOutputFilterByType DEFLATE text/html
 AddOutputFilterByType DEFLATE text/xml
 AddOutputFilterByType DEFLATE text/css
 AddOutputFilterByType DEFLATE application/xml
 AddOutputFilterByType DEFLATE application/xhtml xml
 AddOutputFilterByType DEFLATE application/rss xml
</IfModule>

# Доколку модулот expires е вчитан, додади Expire хедери на следните видови датотеки
<IfModule mod_expires.c>
 ExpiresActive On
 ExpiresDefault "access plus 1 seconds"
 ExpiresByType image/x-icon "access plus 2678400 seconds"
 ExpiresByType image/jpeg "access plus 2678400 seconds"
 ExpiresByType image/png "access plus 2678400 seconds"
 ExpiresByType image/gif "access plus 2678400 seconds"
 ExpiresByType application/x-shockwave-flash "access plus 2678400 seconds"
 ExpiresByType text/css "access plus 2678400 seconds"
 ExpiresByType text/javascript "access plus 32678400 seconds"
 ExpiresByType application/x-javascript "access plus 32678400 seconds"
 ExpiresByType text/x-js "access plus 32678400 seconds"
 ExpiresByType text/html "access plus 1 seconds"
 ExpiresByType application/xhtml xml "access plus 1 seconds"
</IfModule>

<ifModule mod_headers.c>
 Header unset ETag
 Header set Vary *
</ifModule>

FileETag None

Овие три модули во Apache не се активни со основната инсталација, така да треба да се активираат. Кај повеќето хостинг компании што нудат LAMP хостинг на серверите, овие модули се активирани.

Проверете дали на вашата веб страна успешно е активирана gzip компресијата овде.

gravatar
Автор: Горан Митев
За авторот: Freelance PHP програмер којшто професионално работи развој на комплексни веб апликации, CMS решенија, Е-Бизнис решенија, Wordpress. повеќе >>

2 Коментари

  1. А зошто ги исклучуваш ETag и Vary хедерите??

  2. Накратко: заради проблеми со веб страни хостирани на повеќе од еден сервер. Еве линк: http://developer.yahoo.com/performance/rules.html#etags
    Vary хедерите се поставуваат на вредност *, доколку одлуката за компресија на фајловите не зависи комплетно од request хедерите, односно зависи и од други информации како верзијата на HTTP протоколот.