Научи ме

Други => SEO - оптимизация => Темата е започната от: georgirgeorgiev в 18 Юли 2015, 23:52:41

Титла: Подобряване скоростта на уебсайт
Публикувано от: georgirgeorgiev в 18 Юли 2015, 23:52:41
Здавейте на всички!
Имам уебсайт, който съм направил само с HTML и CSS, и двата файла не са големи. Сайта има 3 страници. Като цяло няма много информация на него. Обаче основният му трафик идва от това, че на всяка от трите му страници, има средно по около 50 jpg картинки с размери някъде около 200px (дължина) на 110px (височина). При всяко ново презареждане на страниците, зареждането продължава около две секунди. Пробвах да проверя сайта в "pagespeed" и там като гледам ми даде доста ниски резултати за скоростта му:
- mobile 67/100
- desktop 75/100
Видях, че задължителното нещо, което от "pagespeed" ми казват, че е нужно да оптимизирам в сайта, е "Leverage browser caching". Доколкото разбрах, това е кеширане на файловете в сайта. Потърсих в интернет и ако съм разбрал правилно, един от начините да се осъществи това кеширане, е като се добави в .htaccess файла (в root директорията на сайта) следните редове код:

## EXPIRES CACHING ##
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpg "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType text/css "access plus 1 month"
ExpiresByType application/pdf "access plus 1 month"
ExpiresByType text/x-javascript "access plus 1 month"
ExpiresByType application/x-shockwave-flash "access plus 1 month"
ExpiresByType image/x-icon "access plus 1 year"
ExpiresDefault "access plus 2 days"
</IfModule>
## EXPIRES CACHING ##

Добавих този код, като единственият друг код, който се съдържа в .htaccess файла е няколкото реда код над този (добавеният за кеша), който е следният:

Options -Indexes

#<IfModule mod_env.c>
#        SetEnv PHPRC /home/CPANEL_NAME/php.ini
#</IfModule>

И под него е кода, който вече по-горе копирах за кеша. Това е целият код, който ми е сложен в .htaccess
Обаче след като направих тази промяна, в "pagespeed" и в "gtmetrix" все още продължава да ми показва, че сайта ми има нужда от "Leverage browser caching". Писах на хостинга ми и те ми казаха, че с добавеният от мен код в файла, кеширането си работи. И наистина когато влезн в Mozilla, влезна в конзолата, отворя секцията Net и презаредя страницата, отдолу ми изписва нещо от сорта на 458,2 KB (from cache).
Тогава защо "Leverage" не ми го отчита като направен в двата сайта за проверка на бързината на уебсайта?
Искам да ви попитам още едно нещо, ако няма проблем - тези 2 секунди които са нужни за да ми зареди сайта могат ли да бъдат намалени при положение, че имам около 50 картинки, което се явява 50 http заявки ? Достатъчно много ли са заявките, че сайта да зарежда 2 секунди, ако речем, че кеширането съм го активирал ? Или би трябвало след кеширане, макар и да са толкова заявките, сайта да зарежда по-бързо от 2 секунди?

Всъщност като цяло файловете ми в него не са толкова големи, общо взето най-основните файлове са следните:
3 HTML страници = 45kb (общо)
CSS = 14kb
Images = 899kb
Но предполагам това не е реална статистика що касае презареждането на страница, понеже тези 899 kb са общият брой размер на всички картинки, а на една страница имам около 1/3 от тези картинки, тоест около 300kb да речем, понеже другите нали не ги зарежда, освен ако не влезна в дадената страница, за която ще зареди картинките, които се намират в нея? Тоест при презареждане на всяка от страниците общият брой големина на всички файлове, ако не се лъжа, е около 450kb.
Мноо станаха въпросите. Това е което исках да ви попитам.

БОГ да ви благослови.
Титла: Re: Подобряване скоростта на уебсайт
Публикувано от: jazzman в 19 Юли 2015, 00:58:26
Направи tumbnail-ли на тези снимки с линк към оригинала, ако държиш зареждането да става по бързо в браузъра. То ти реално нямаш нищо сървърно като,  php, sql, bash, perl скриптове и т.н.  Това с кеширането на файлове в апачи е бош-лаф работа при положение, че си на shared hosting. 2 секунди презареждане на нова страница не е много ако си махнал кеширането в браузъра си ( съветвам те винаги да разработваш без кеш), но ако е с кеш може и да се окаже проблем. Махни кеша и пробвай отново. 
Титла: Re: Подобряване скоростта на уебсайт
Публикувано от: canon4o в 19 Юли 2015, 01:51:38
Друга оптимизация, която можеш да направиш е асинхронно с JavaScript да зареждаш картинките. Но това ще ти генерира доста requests към сървъра.
Титла: Re: Подобряване скоростта на уебсайт
Публикувано от: georgirgeorgiev в 19 Юли 2015, 02:57:21
Благодаря ви за отговорите!

БОГ да ви благослови.

Jazzman, намалил съм размера (широчината и височината) на картинките.  В най-широката резолюция, която съм направил за сайта, са ми нужни картинки широки и дълги около 200px на 110px, и всички картинки съм ги намалил до размер подобен на този (до с около 5 пиксела разлика при някои от тях).
Изтрих кода, който по-горе в темата съм написал, че съм добавил за кеширането. И преди да сложа кода и след това, не заблеязах някакв разлика, майе защото ..... гледам в Mozilla пак ми кешира файловете, но може и да е от настройките на Mozilla, не от сайта, нямам идея. Гледам и в Google Chrome майче е същото. В панела на хостинга има една функция, която се нарича Memcached. Ще е добре ли да я активирам или не ?

Ами това време какво точно указва ?
http://postimg.org/image/z81njmphb/full/
Ако вече е кеширана, изглежда не е времето за което се е изтеглила картинката.

Canon4o, ще се поинтересувам какво е това асинхронно програмиране с JavaScript, че нямам никаква представа. Тоест бързината на сайта се увеличава по този начин, а в замяна се губи нещо друго от процеса (заради the requests), така ли ?
Титла: Re: Подобряване скоростта на уебсайт
Публикувано от: jazzman в 19 Юли 2015, 04:02:23
Дай да погледнем сайта или най-малкото постни кода от него. Не харесвам въпроси, отговаряйки стреляйки на тъмно.  За кеша на лисугера, тук (https://support.mozilla.org/en-US/questions/905902).
Титла: Re: Подобряване скоростта на уебсайт
Публикувано от: georgirgeorgiev в 19 Юли 2015, 07:44:55
Благодаря отново за линка!

Това е сайта - http://jesuschrist.cloudvps.bg/
Титла: Re: Подобряване скоростта на уебсайт
Публикувано от: Avalanche в 19 Юли 2015, 11:34:50
Имаш някакъв проблем с нета ти най-вероятно, аз тука съм с мизерен (5 лв/месец) и пак зарежда под 400ms:

(http://i.ava7.eu/screenshots/0M1Jz.png)








П.П. Може да използваш urldecode (http://php.net/urldecode) за да оправиш линковете на кирилица, а не да виждаш нещо от сорта на %D0%B0%
Титла: Re: Подобряване скоростта на уебсайт
Публикувано от: jazzman в 19 Юли 2015, 14:33:24
Ами всичко зареждаш от youtube за това е и по бавно и след всеки рефреш се презарежда отново пращайки заявката към тях. Качи само снимките към твоят домейн, сложи кратко описание на топика и им сложи линкове към youtube за да плейваш видеата от там.

ПП Снимките са локални. Извинявам се за грешката. Всичко е наред за мен. Оправи си енкодинга на линковете само, както Аваланч е  споменал по горе. Понеже не ползваш server side language като php примерно, би могъл да ги оправиш с javascript.
Титла: Re: Подобряване скоростта на уебсайт
Публикувано от: georgirgeorgiev в 19 Юли 2015, 15:40:10
БОГ да ви благослови.

Благодаря ви за поредната помощ!

Avalanche, може и така да е, при мен средното време на зарежда на страница е около 1.05s, като под 0.800-0.900 почти не пада (най-вече пиша за главната страница). Обаче то нали майче има и значение от къде човек достъпва сайта, например в зависимост от държавата? Понеже когато тествам сайта в gtmetrix, показва такъв резултат -  "Page Load Time - 3.3s". Като докато теста тече, отдясно изписва "Test Server Region: Vancouver, Canada". Затова искам да го направя максимално бърз така, че и от места, където се отваря по-бавно, да не се отваря твърде бавно.

Относно линковете, няма ли да е ненужно да добавям JavaScript код за картинките, при положение, че така съм направил страницата, че отварянето на самите картинки, да не е от основните цели за потребителите, ами направо когато цъкнат на даденият прозорец (рекламиращ определния клип), сайта да ги препраща към youtube или vbox7, от където могат да гледат определния клип за който съм сложил картинка, като корица?
Титла: Re: Подобряване скоростта на уебсайт
Публикувано от: Avalanche в 19 Юли 2015, 15:47:06
Относно линковете, няма ли да е ненужно да добавям JavaScript код за картинките, при положение, че така съм направил страницата, че отварянето на самите картинки, да не е от основните цели за потребителите, ами направо когато цъкнат на даденият прозорец (рекламиращ определния клип), сайта да ги препраща към youtube или vbox7, от където могат да гледат определния клип за който съм сложил картинка, като корица?
Мене лично ме дразни, а какво ме дразни гледам да го оправям. Отделно може да има някакво значение за SEO-то (най-вероятно има).

А за разстоянието до сървъра - разбира се че има. Джаза ще ти каже най-добре - той живее в Канада.
Титла: Re: Подобряване скоростта на уебсайт
Публикувано от: georgirgeorgiev в 19 Юли 2015, 16:31:12
Ясно, добре Avalanche, тогава ще се поинтересувам относно промяната на url визуализацията.