Поддержка Проблемы и решения Как добавить last-modified

  • Добрый день, как добавить обработку last-modified на сайт???
    Добавлял этот код в header.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);
    ?>

    но, при проверке результат такой — https://imgur.com/a/4vQc02u

    • Тема изменена 2 года, 4 месяца назад пользователем Denis Yanchevskiy. Причина: оформление кода
Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Модератор Юрий

    (@yube)

    Для начала убедитесь, что php получает $_ENV[‘HTTP_IF_MODIFIED_SINCE’] или $_SERVER[‘HTTP_IF_MODIFIED_SINCE’].

    А можно пожалуйста поподробнее, как это сделать?

    Модератор Юрий

    (@yube)

    1. Закрыть сайт от посторонних.

    2. В тот же header.php вставить

    
    <?php
    var_dump($_ENV['HTTP_IF_MODIFIED_SINCE']);
    var_dump($_SERVER['HTTP_IF_MODIFIED_SINCE']);
    ?>
    

    3. выполнить
    curl --header 'If-Modified-Since: Mon, 11 May 2020 08:21:11 +0300' http://ваш.сайт/

    Должно получится что-то типа

    NULL
    string(31) "Mon, 11 May 2020 08:21:11 +0300"
    

    Если обе строки NULL, настраивать веб-сервер так, чтобы он прокидывал заголовок If-Modified-Since в PHP.

Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Тема «Как добавить last-modified» закрыта для новых ответов.