Немає межі досконалості, тому оптимізація сайту в плані його швидкості роботи - це перманентний процес, яким можна займатися вічно, було б бажання і час з завантаження всього сайту.
У попередній раз я описав спосіб стиснення JS і CSS файлів, завантаження яких займає найбільш тривалий час. Сьогодні хотілося б поговорити про кешуванні зображень, JS-файлів, html-коду і інших важливих елементів сайту.
Аудиторія будь-якого сайту складається з людей, які часто заходять до Вас і хто заходить періодично з пошукових систем або просто випадково згадавши про вашому сайті.
Ті люди, які переходить з пошукових систем, безсумнівно більше оцінять вашу роботу по оптимізації html і css-коду, оптимізації зображень, стиснення JS-файлів і так далі, що істотно підвищить швидкість завантаження і знизить час очікування.
Але ті люди, які приходять до вас постійно, кожного разу завантажують всі елементи сайту, нехай навіть вони і ретельно оптимізовані, оцінять продуманість системи кешування, яку ми і будемо реалізовувати нижче.
Завдяки кешуванню можна домогтися ще більшої продуктивності вашого сайту, що благотворно позначиться на його відвідуваності.
Найпростішим способом кешування, якщо це можна так називати, є кешування на стороні клієнта. Тобто браузер відкриваючи новий сайт, завантажує всі зображення, додаткові файли і зберігає їх на жорсткому диску. При наступному зверненні до цієї сторінки, браузер по-новій завантажує ці елементи, які, в принципі, не змінилися і можуть з таким же успіхом братися з кеша.
Щоб прибрати цю несправедливу повторну завантаження, нам допоможе всемогутній файл .htaccess. який розташовується в кореневій директорії вашого сайту. Щоб не розповідати про правильне синтаксисі використовуваних команд, я приведу бойової шматок цього файлу з блогу AdminWay.
Цей код слід розміщувати в самому кінці файлу .htaccess. Якщо зануритися в розуміння цих рядків, то стане зрозуміло, що кожному типу файлів / елементів задається різний час зберігання в кеші. З цього прикладу видно, що практично всі елементи сайту зберігаються в кеші 1 тижня з моменту завантаження, а css-код 1 тиждень після зміни. Також html-код зберігатися 10 хвилин з моменту модифікації (якщо браузер відвідувача зайшов на ваш сайт і дата оновлення контенту відрізняється від того, що вже завантажено в кеші, або з того моменту вже пройшло 10 хвилин, то інформація грузиться по-новій).
Я не претендую на "золоту" середину цих параметрів, але ці параметри значно скоротили трафік мого хостингу і зменшили швидкість завантаження сайту. Коротше, одні плюси.
P.S. Багато запитають чому зберігати кеш я вирішив тільки тиждень? Я давно читав якийсь доповідь спеціаліста Google, де говорилося про те, що такі елементи слід зберігати не менше 1 тижня. Ця цифра запала в голову і тепер красується майже на всіх моїх сайтах в файлі .htaccess.
P.S.S. Хтось не знає, але, взагалі, грамотне створення web сайту - це серйозний процес, який вимагає від веб-майстра певних знань і досвіду, який приходить тільки з власними шишками, отриманими під час безсонних ночей.
Цікаве рішення з помощю .htaccess, потрібно буде взяти на озброєння. Хоча, думаю того ж результату можна добитися і з помощю изминения / вказівки HTTP -заголовков функцією header ()
Але бувають і прямопротівоположное завдання, зокрема потрібно не кешувати певний елемент на сторінці, наприклад "випадкове фото". Які можуть бути рішення в такому випадку?
Поставив. Відразу ж Internal Server Error - помилка 500
Шкода ...
Для тих, у кого показує помилку 500.
Вказану конструкцію слід включати в наступну:
ExpiresActive On ... (далі по інструкції)