- Давайте подумаємо, чому сайт довго завантажується, які можуть бути причини і як їх усунути.
- Алгоритм отримання сторінки
- Використовуємо допомогу сервера
Дуже часто ми шалено дратуємося, коли потрапляємо на сайт, сторінки якого вантажаться по кілька хвилин. Якщо сайт довго завантажується, то він, безсумнівно, буде втрачати чимале число своїх відвідувачів.
Отже, яким би цікавим, інформативним і приємним на вигляд не був би сайт, він зобов'язаний працювати швидко. Якщо ж цим вимогою поступитися, то замість вашого сайту, користувачі інтернету обов'язково знайдуть аналогічний, але набагато швидший. Іноді користувач вважатиме за краще трохи менш якісний веб-сайт, але швидкий, тому що завантажується вкрай повільно, незважаючи на високу якість контенту. У сучасному світі час важливо для кожної людини, чим би він не займався.
Давайте подумаємо, чому сайт довго завантажується, які можуть бути причини і як їх усунути.
Проблеми зі швидкістю завантаження сторінок виникають, перш за все, у власників більш-менш великих інтернет-ресурсів. Однак іноді і звичайний сайт-візитка може завантажуватися дуже довго, якщо його творець знехтував правилами оптимізації, особливо, коли веб-сайт створений на CMS.
Алгоритм отримання сторінки
Перед тим, як почати прискорювати роботу свого сайту в плані завантаження веб-сторінок, необхідно ознайомитися з алгоритмами отримання сторінки. Для прикладу візьмемо цілком стандартну динамічну сторінку, яка включає в себе Java-скрипти, PHP-код, HTML, а також таблицю стилів.
Отже, вводячи адресу певної сторінки такого ось сайту в своєму браузері, ви через деякий час бачите візуальну інтерпретацію сторінки. У цей час відбуваються приховані від очей користувача процеси:
- браузер з протоколу http відправляє запит на отримання сторінки з сервера, де вона зберігається; - сервер обробляє цей запит, виконуючи PHP-код сторінки, природно, якщо такий є, також, якщо це необхідно, йде звернення сервера до бази даних, а вже після генерується все це в html.
Ось тут вузький момент і я хотів би звернути вашу увагу.
Зазвичай в CMS сторінки зберігаються в базі даних, а це значить, сервер мало того що виконує php скрипт, так ще і робить запити до бази даних що б взяти сторінку з бази. А значить ваш запит в базі даних потрапляє в чергу з таких же запитів як ваш. Далі отримує текст з бази, завершує виконання php скрипта, формує сторінку і в готовому вигляді видає її браузеру.
Що отримати прискорення вам треба використовувати кешування. Кешування дозволяє вам зберігати вже готовий результат сторінки або запитів до бази даних на диску, обходити виконання php скрипта і не робити запитів до бази. Тобто сервер просто видає користувачеві вже готовий результат який був сформований заздалегідь. Зазвичай сторінки кешуються на 15-30 хвилин, після чого кеш оновлюється. Обов'язково знайдіть у вашій CMS як включити кешування, кешування збільшить швидкість формування вашої сторінки в 2-3 рази і зменшить навантаження на сервер.
- для виконання Java-скриптів браузеру не потрібна допомога сервера.
Т Тепер поговоримо безпосередньо про причини занадто довгою завантаження сторінки. Вся справа в тому, що крім отримання коду сторінки, браузеру потрібно направити запити на зовнішні ресурси, інформація з яких міститься на даній сторінці, наприклад, стильові таблиці, зображення, Java-бібліотеки і так далі. Також мало просто відправляти запити, але потрібно їх ще й виконувати. А якщо в якості фонового зображення сторінки використовується занадто «важка» картинка, то піде чимало часу, поки завантажиться ця сторінка. Таким чином, час завантаження сайту залежить як від кількості запитів, так і від часу їх обробки.
Тут потрібно стиснути картинки до меншого розміру, виділити javascripts і css в окремі файли і прибрати в них зайві тексти і сміття.
Використовуємо допомогу сервера
Увімкніть стиснення сторінок та інших файлів. Якщо у вас нормальний хостинг як у нас, це можна зробити через .htaccess або прямо в cPanel в розділі " "
Якщо через .htaccess то додати рядки:
<IfModule mod_deflate.c> AddOutPutFilterByType DEFLATE text / html text / plain text / xml text / css text / javascript application / javascript <IfModule mod_setenvif.c> # 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 # NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48 # the above regex will not work. You can use the following # workaround to get the desired effect: BrowserMatch bMSI [E]! No-gzip! Gzip-only-text / html # Do not compress images SetEnvIfNoCase Request_URI. (?: gif | jpe? G | png) $ no-gzip dont-vary </ IfModule> <IfModule mod_headers.c> # Make sure proxies do not deliver the wrong content Header append Vary User-Agent env =! dont-vary </ IfModule> </ IfModule>
Ще можна додати кешування браузером картинок, скриптів і т. П. Тоді браузер кожного разу не буде запитувати їх для завантаження, а буде вже відразу тримати їх в кеші.
<IfModule mod_expires.c> ExpiresActive On ExpiresDefault "access plus 5 seconds" ExpiresByType text / html "access plus 10 seconds" ExpiresByType image / jpg "access 1 month" ExpiresByType image / gif "access 1 month" ExpiresByType image / jpeg "access 1 month "ExpiresByType image / png" access 1 month "ExpiresByType text / css" access 1 month "ExpiresByType application / x-javascript" access plus 1 month "ExpiresByType text / javascript" access plus 1 month "ExpiresByType application / javascript" access plus 2 week "ExpiresByType image / x-icon" access plus 2 month "ExpiresByType image / icon" access plus 2 month "ExpiresByType application / x-ico" access plus 2 month "ExpiresByType application / ico" access plus 2 month "</ ifModule>
Ну і на останок, ось вам посилання ресурсу від гугла, який перевірить ваш сайт і дасть корисні поради по оптимізації: https://developers.google.com/speed/pagespeed/insights/?hl=ru
Отже, якщо ваш сайт довго завантажується, то постарайтеся зробити все. Щоб зменшити розмір сторінок, використовуйте передові технології прискорення, оптимізуйте код і веб-дизайн. Всі ці дії допоможуть зробити сайт швидше, що буде сприяти підвищенню його популярності. Успіхів!
Ну і звичайно вибирайте якісний хостинг. Я рекомендую http://pwhost.ru
© ProWeb studio 2016
© І. П. Пруслін Олексій Віталійович 2012
Використання матеріалів сайту тільки з дозволу адміністрації та обов'язковим посиланням на джерело!
Gif | jpe?Com/speed/pagespeed/insights/?