1 (27.09.2016 22:31 отредактировано ds8880)

Тема: Есть решение 304 Not Modified, однако не до конца реализованное

Версия 10.6
Придумал решение реализации 304 Not Modified, однако для этого необходимо, чтобы в файле своего модуля, например по адресу: /engine/modules/httpmod.php, вытащить дату последнего изменения новости, желательно в Юникс.

Например, в файле /engine/modules/functions.php есть $_DOCUMENT_DATE, которая выводит дату последнего изменения новости.
Однако в этом файле реализовать решение 304 Not Modified не получается - валидатор выдает ошибку, хотя на сайте http://last-modified.com/ru/ тест проходит. Однако там проверяется только чтобы дата, передаваемая в запросе If-Modified-Since была больше даты последнего изменения новости, только и всего. А пустая переменная это "0", поэтому тест всегда проходит.

Про важность 304 Not Modified для SEO написано много. А Яндекс и Гугл этому моменту рекомендует уделить особое внимание.


АлаичЪ также вот что писал в своей статье https://alaev.info/blog/post/1731 про важность 304 Not Modified:

А зачем же в список важных кодов ответа сервера я написал 304 Not Modified? Это состояние означает, что страница не изменилась, и роботу незачем ее заново загружать и можно идти дальше. Зачем это надо? А для того, что на больших порталах может содержаться огромное количество страниц, и, чтобы быстро проиндексировать новые (или переиндексировать старые, но изменившиеся), роботу может потребоваться больше месяца. А вы ведь хотите, чтобы поисковик поддерживал индекс вашего сайта в актуальном состоянии, правда! На опыте одного из своих сайтов, количество страниц которого переваливает за полмиллиона, знаю, что переиндексация занимает от месяца до двух!

Только вот почему-то разработчики различных CMS об этом забывают или не думают вообще, а надо было бы! Так что пока такую фишку с кодом ответа 304 можно назвать высшим пилотажем!

Однако решения на DLE ни он, ни другие не предлагают. Облазил весь Интернет, решения для DLE так и не нашел.

Придумал свое решение, однако, как уже написал выше, необходимо в файл модуля вывести дату последнего изменения новости, желательно в Юникс.

Кто знает как вывести, поделитесь!