Ми використовуємо cookie-файли
Для оптимізації роботи нашого сайту ми використовуємо cookie-файли. Продовжуючи використовувати сайт, Ви погоджуєтеся з використанням cookie-файлів.
Новий дизайн
Панель керування
  • Русский
  • Українська
  • English
  • UAH
  • USD
  • RUB
  • EUR
  • 0-800-307-307 Гаряча лінія
  • +38 (044) 392-74-33 Київ
  • +38 (057) 728-39-00 Харків
  • +38 (056) 794-38-31 Дніпро
  • +38 (032) 229-58-93 Львів
  • +38 (048) 738-57-70 Одеса
  • +38(093) 170-15-42  Life
  • +38 (067) 400-88-44 Київстар
  • +1(888)393-24-51  USA, Toll free
  • +44(131)507-01-14  Great Britain
  • +7 (499) 348-28-61 Москва

2.20.19. Сервер не повертає HTTP-заголовок Last-Modified

Сервера віртуального хостингу за замовчуванням повертають HTTP-заголовок Last-Modified для статичного контенту (зображення, таблиці стилів, JS-скрипти). Якщо ви зіткнулися з ситуацією, при якій сервер не повертає цей заголовок, вам варто перевірити, чи не активована опція «SSI» в налаштуваннях сайту:

Якщо опція «SSI»Включена, сервер не буде повертати заголовок для контенту, що передається веб-сервером Apache. Для статичного контенту заголовок буде повертатися в будь-якому випадку. Робота технології SSI забезпечується завдяки модулям веб-сервера Apache, який ми використовуємо в якості бекенд-сервера на хостингу. В офіційної документації повідомляється, що при використанні SSI, заголовок Last-Modified ; не повертається, так як розрахувати час останнього зміни для динамічного контенту складно.

Для динамічного контенту (динамічні сторінки, PHP-скрипти) даний заголовок необхідно передавати самостійно. Як приклад можна використовувати наступний код:

<?php
$LastModified_unix = 1294844676; // время последнего изменения страницы
$LastModified = gmdate("D, d M Y H:i:s \G\M\T", $LastModified_unix);
$IfModifiedSince = false;
if (isset($_ENV['HTTP_IF_MODIFIED_SINCE']))
    $IfModifiedSince = strtotime(substr($_ENV['HTTP_IF_MODIFIED_SINCE'], 5)); 
if (isset($_SERVER['HTTP_IF_MODIFIED_SINCE']))
    $IfModifiedSince = strtotime(substr($_SERVER['HTTP_IF_MODIFIED_SINCE'], 5));
if ($IfModifiedSince && $IfModifiedSince >= $LastModified_unix) {
    header($_SERVER['SERVER_PROTOCOL'] . ' 304 Not Modified');
    exit;
}
header('Last-Modified: '. $LastModified);

Перевірити роботу заголовка і отримати додаткові рекомендації по роботі з ним можна на сайті last-modified.com.

Увага!

Заголовок не буде повертатися для динамічного контенту, якщо активовані будь-які опції модуля PageSpeed.