- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
В 2023 году Одноклассники пресекли более 9 млн подозрительных входов в учетные записи
И выявили более 7 млн подозрительных пользователей
Оксана Мамчуева
Зачем быть уникальным в мире, где все можно скопировать
Почему так важна уникальность текста и как она влияет на SEO
Ingate Organic
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
На php сайте зачастую возникает проблема: не отдаётся верный заголовок обновления страницы. Поможет ли этот код решить проблему, будет ли отдавать верная дата изменения?
$date = time();
$last_modified = gmdate('D, d M Y H:i:s', $date) . ' GMT';
if (isset($_SERVER['HTTP_IF_MODIFIED_SINCE'])) {
$if_modified_since = preg_replace('/;.*$/', '', $_SERVER['HTTP_IF_MODIFIED_SINCE']);
if ($if_modified_since == $last_modified) {
header('HTTP/1.0 304 Not Modified');
header('Cache-Control: max-age=86400, must-revalidate');
exit;
}
}
header('Cache-Control: max-age=86400, must-revalidate');
header('Last-Modified: ' . $last_modified);
В идеале лучше делать так, чтобы каждый php-скрипт, принимающий участие в генерации страницы, добавлял в глобальный массив $last_modified элемент с датой изменения себя (скрипта) и, если он берёт что-то из базы (например, новости), также добавлял элементы с датами записей из базы.
В итоге у нас получится массив с разными датами (timstamp).
Затем, берём из этого массива элемент с наибольшим значением, и это получается актуальная дата последнего изменения.
Её-то мы и отдаём в заголовке Last-Modified.
Соответственно, если запрос приходит с If-Modified-Since, то сравниваем даты и отдаём или не отдаём контент.
Это всё моё ИМХО :)
Возможно, как-то всё можно сделать ещё красивей.
А как наиболее правильно написать тз программисту, чтобы исправил эту проблему для php сайта?
Это не проблема. Это задача.
Программисту её нужно озвучить примерно так: "Хочу, чтобы на всех страницах выдавался корректный Last-Modified!" :)
А как он будет это делать, уже его проблема :)