radoslav68
Active Member
Здравейте колеги,
Отварям тази тема защото преди седмица ми се наложи да оптимизирам сайта си, след като получих 4 писма от хостинга за превишаване на процесорното време. Отне ми няколко дни ровене из нета и в крайна сметка получих задоволителен резултат по отношение на скороста на зареждане на сайта ми, което е в резултат на оптимизирането на сървъра - говоря за сървър Apache 2.0 - 2.2, Linux OZ.
По-доло описаните стъпки ще ви спестят главоболия и време, ако хостинг провайдъра не ви е читав и от друга страна сайта ви ще зарежда доста по-бързо. Избрал съм основните неща, които дават ефект и се отнасят най-вече, ако ползвате споделен хостинг план. За прилагането ще ви отнеме не повече от 10-15 мин.
Като за начало тествайте скороста на зареждане на сайта си с тези инструменти:
Yahoo YSlow
Google Page Speed Insight
GTmetrix
Да започнем подобренията!
Отворете .htaccess файла в някой текстови редактор - не забравяйте да си направите копие на файла за всеки случай!
1. Разрешете компресията на файловете
Mod_deflate разрешава файловете да се компресират. Намерете в .htaccess <ifmodule mod_deflate.c> и го заменете с кода по-доло:
Една добавка - от cPanel в раздела "Програми и допълнителен софтуер" изберете опцията "Optimize Website".
След това изберете "Compress all content" - вижте скрийн шотовете по-доло.
2. Включете Apache модула mod_expires.
Аз тествах около 10 варианта, но този който ви предлагам даде най-добри резултати.
Заменете в .htaccess, кода по-доло
<ifmodule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 month"
</ifmodule>
със този код
3. Включете функцията KeepAlives. Това увеличава скоростта на зареждането в браузера за HTML страници със повече снимки.
Няколко допълнителни неща. Помолете подръжката на хостинга да ви инсталират PHP акселератора APC или XCashe. Аз лично нямам никой от двата.
Направете няколко теста за Speed Performance с инструментите описани най-горе - надявам се резултата да е положителен!
Отварям тази тема защото преди седмица ми се наложи да оптимизирам сайта си, след като получих 4 писма от хостинга за превишаване на процесорното време. Отне ми няколко дни ровене из нета и в крайна сметка получих задоволителен резултат по отношение на скороста на зареждане на сайта ми, което е в резултат на оптимизирането на сървъра - говоря за сървър Apache 2.0 - 2.2, Linux OZ.
По-доло описаните стъпки ще ви спестят главоболия и време, ако хостинг провайдъра не ви е читав и от друга страна сайта ви ще зарежда доста по-бързо. Избрал съм основните неща, които дават ефект и се отнасят най-вече, ако ползвате споделен хостинг план. За прилагането ще ви отнеме не повече от 10-15 мин.
Като за начало тествайте скороста на зареждане на сайта си с тези инструменти:
Yahoo YSlow
Google Page Speed Insight
GTmetrix
Да започнем подобренията!
Отворете .htaccess файла в някой текстови редактор - не забравяйте да си направите копие на файла за всеки случай!
1. Разрешете компресията на файловете
Mod_deflate разрешава файловете да се компресират. Намерете в .htaccess <ifmodule mod_deflate.c> и го заменете с кода по-доло:
Код:
<ifmodule mod_deflate.c>
############################################
## enable apache served files compression
## http://developer.yahoo.com/performance/rules.html#gzip
# Insert filter
SetOutputFilter DEFLATE
# Netscape 4.x has some problems...
BrowserMatch ^Mozilla/4 gzip-only-text/html
# Netscape 4.06-4.08 have some more problems
BrowserMatch ^Mozilla/4\.0[678] no-gzip
# MSIE masquerades as Netscape, but it is fine
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
# Don't compress images
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
# Make sure proxies don't deliver the wrong content
Header append Vary User-Agent env=!dont-vary
</ifmodule>
Една добавка - от cPanel в раздела "Програми и допълнителен софтуер" изберете опцията "Optimize Website".
След това изберете "Compress all content" - вижте скрийн шотовете по-доло.
2. Включете Apache модула mod_expires.
Аз тествах около 10 варианта, но този който ви предлагам даде най-добри резултати.
Заменете в .htaccess, кода по-доло
<ifmodule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 month"
</ifmodule>
със този код
Код:
<IfModule mod_expires.c>
############################################
## Add default Expires header
## http://developer.yahoo.com/performance/rules.html#expires
ExpiresActive On
ExpiresDefault "access plus 1 month"
ExpiresByType image/jpg "access 1 month"
ExpiresByType image/jpeg "access 1 month"
ExpiresByType image/gif "access 1 month"
ExpiresByType image/png "access 1 month"
ExpiresByType text/css "access 1 month"
ExpiresByType application/pdf "access 1 month"
ExpiresByType text/x-javascript "access 1 month"
ExpiresByType application/x-shockwave-flash "access 1 month"
ExpiresByType image/x-icon "access 1 year"
</IfModule>
# Set Expires Headers
<FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$">
Header set Cache-Control "public"
Header set Expires "Tue, 14 Aug 2020 03:00:00 PST"
</FilesMatch>
<FilesMatch "\.(bmp|css|flv|gif|ico|jpg|jpeg|js|pdf|png|svg|swf|tif|tiff)$">
Header set Last-Modified "Mon, 31 Jan 2011 00:00:00 GMT"
</FilesMatch>
# Set the cache-control max-age
# 1 year
<FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$">
Header set Cache-Control "max-age=31449600, public"
</FilesMatch>
# 2 DAYS
<FilesMatch "\.(xml|js|css)$">
Header set Cache-Control "max-age=604800, public, must-revalidate"
</FilesMatch>
# 4 HOURS
<FilesMatch "\.(html|htm|txt)$">
Header set Cache-Control "max-age=14400, must-revalidate"
</FilesMatch>
3. Включете функцията KeepAlives. Това увеличава скоростта на зареждането в браузера за HTML страници със повече снимки.
Код:
KeepAlive On
KeepAliveTimeout 2
Няколко допълнителни неща. Помолете подръжката на хостинга да ви инсталират PHP акселератора APC или XCashe. Аз лично нямам никой от двата.
Направете няколко теста за Speed Performance с инструментите описани най-горе - надявам се резултата да е положителен!
Последно редактирано: