Всем добрый день!
Столкнулся с такой проблемой что для моих страниц в выдаче Яндекса не показывается дата документа. Оказывается проблема в том, что при кешировании страниц Яндексом, сервер не выдает заголовок last-modified(дату документа). В Яндексе про это пишут следующее:
Цитата:
Во-первых, в результатах поиска не будет показываться дата рядом со страницами вашего сайта, а при сортировке по дате сайт не будет виден большинству пользователей. Во-вторых, робот не сможет получить информацию о том, обновилась ли страница сайта с момента последней индексации, а так как число страниц, получаемых роботом с сайта за один заход, ограничено, изменившиеся страницы будут переиндексироваться реже.
Т.е. сервер last-modified должен выдавать, и это важно! Хочу спросить какие способы выдачи этого параметра вы знаете. Как это организовать?
Это должен автоматом делать сервер, или самому через скрипты? Как быть в случае если страницы динамические или статические? Какие мета-теги нужно применять? Можно ли это настроить через .htaccess?
Буду очень рад любому конструктивному ответу.
Заранее спасибо!
Добавлено: Вт Ноя 07, 2006 8:58 am Заголовок сообщения:
Добрый день.
Выдача заголовка Last-Modified сервером возможна только в том случае, если сервер выдает статические файлы, в этом случае сервер знает, что дата обновления файла для HTTP равна дате обновления файла в файловой системе.
Другое дело, когда страница формируется некоторым скриптом, в этом случае сервер не может знать, изменилась ли страница, формируемая в результате работы скрипта -- ведь содержимое страницы может измениться даже если файл скрипта не изменялся. В этом случае сервер не выдает никаких дат, соответственно о датах должен побеспокоиться сам скрипт.
Если используется не слишком сложная технология, вроде SSI, то можно воспользоваться директивой XBitHack для сервера Apache, как раз можно это делать и в htaccess.
В PHP и других скриптах можно принудительно выдавать заголовок Last-modified с помощью функции header(), например:
Код:
header( "Last-Modified: " . gmdate("D, d M Y H:i:s", time()) . " GMT");
Еще роботами используется заголовки If-Modified-Since, в этом случае сервер (или скрипт) должен обрабатывать запросы с такими заголовками и выдавать ответы 200 или 304 в зависимости от того, менялась ли страница, но это уже несколько сложнее делать в скрипте, чем просто выдать Last-Modified. _________________ С уважением,
Владимир Чернышов
(не)?путевые заметки промоутера
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах