$headers['Cache-Control'] = "public, must-revalidate, max-age=3600, s-maxage=3600";
            break;
        case "cache-control-override":
            $headers['Expires'] = toUTCDate($expires_date);
            $headers['Cache-Control'] = "public, must-revalidate, max-age=2, s-maxage=2";
            break;
        case "last-modified":
            $headers['Last-Modified'] = LAST_MODIFIED_STRING;
            $headers['Etag'] = md5(12345);
            if (isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) and $_SERVER['HTTP_IF_MODIFIED_SINCE'] == LAST_MODIFIED_STRING) {
                header("HTTP/1.1 304 Not Modified");
                exit;
            }
            break;
        case "vary":
            $headers['Expires'] = toUTCDate($expires_date);
            $headers['Vary'] = 'User-Agent';
            break;
    }
    sendHeaders($headers);
}
function sendHeaders(array $headerList)
{
    foreach ($headerList as $name => $value) {
        header("{$name}: {$value}");
    }
}
function toUTCDate(DateTime $date)
{
    $date->setTimezone(new DateTimeZone('UTC'));
    return $date->format('D, d M Y H:i:s \\G\\M\\T');
예제 #2
0
            $headers['Cache-Control'] = "public, must-revalidate, max-age=3600, s-maxage=3600";
            break;
        case "cache-control-override":
            $headers['Expires'] = toUTCDate(new DateTime(EXPIRES_DATE));
            $headers['Cache-Control'] = "public, must-revalidate, max-age=2, s-maxage=2";
            break;
        case "last-modified":
            $headers['Last-Modified'] = LAST_MODIFIED_STRING;
            $headers['Etag'] = md5(12345);
            if (isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) and $_SERVER['HTTP_IF_MODIFIED_SINCE'] == LAST_MODIFIED_STRING) {
                header("HTTP/1.1 304 Not Modified");
                exit;
            }
            break;
        case "vary":
            $headers['Expires'] = toUTCDate(new DateTime(EXPIRES_DATE));
            $headers['Vary'] = 'User-Agent';
            break;
    }
    sendHeaders($headers);
}
function sendHeaders(array $headerList)
{
    foreach ($headerList as $name => $value) {
        header("{$name}: {$value}");
    }
}
function toUTCDate(DateTime $date)
{
    $date->setTimezone(new DateTimeZone('UTC'));
    return $date->format('D, d M Y H:i:s \\G\\M\\T');