Ещё раз к дате документа

12
N
На сайте с 21.09.2005
Offline
220
1820

Перерыл весь форум. Не нашел четкого ответа на вопрос - что делать с датой документа и заголовком, если страница формируется через кривую CMS или PHP и дата попросту не выдается. (только не надо говорить что ничего делать не надо, все это фигня......нет, от даты все же хоть что-то зависит)

Мне интересно, этот вопрос надо решать с помощью Last-modified или другими методами. Каким обарзом?

Поисковое продвижение сайтов в разных тематиках. 641-222
Алексей Радкевич
На сайте с 19.11.2004
Offline
245
#1

Да от даты кое-чего зависит. Выдача даты документа.

Продвижение сайтов в Новосибирске. (https://www.yalstudio.ru)
КА
На сайте с 16.09.2005
Offline
74
#2

Nitro, почитайте вот это: http://xpoint.ru/know-how/Articles/SlezhenieZaKontentom

T.R.O.N
На сайте с 18.05.2004
Offline
314
#3

Nitro,

Last-modified можно добавить скриптом, если скажеш версии сервака и ПХП, скажу как

От воздержания пока никто не умер. Хотя никто и не родился! Prototype.js был написан теми, кто не знает JavaScript, для тех, кто не знает JavaScript (Richard Cornford)
[Удален]
#4

У меня так делается (если я правильно понял вопрос):

<?

Header("Last-Modified: ".gmdate("D, d M Y H:i:s",filemtime(basename($PHP_SELF)))." GMT");

Header("Content-Type: text/html; charset=windows-1251");

?>

Виталий
На сайте с 04.11.2003
Offline
72
#5

А у меня так:

<?php

header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
?>

Вроде работает.

bondarev.pp.ru
На сайте с 29.09.2005
Offline
202
#6

Ну так в таком случае дата последнего изменения будет соответствовать настоящему времени... Так делать бессмысленно.

Я использую такой код:

<?

function lastmodified($time = 0) {

static $modified;

$ret = (int) $modified;

if ($time > $modified) {

$modified = $time;

}

return $ret;

}

function lastmodified_flush($buffer) {

$files = get_included_files();

foreach($files as $file) {

lastmodified(filemtime($file));

}

header('Last-Modified: '. gmdate('D, d M Y H:i:s', lastmodified()) . ' GMT');

if (!defined('LASTMODIFIED_CLENGTH') || LASTMODIFIED_CLENGTH) {

header('Content-Length: ' . strlen($buffer));

}

return $buffer;

}

ob_start('lastmodified_flush');

?>

- этот скрипт инклюдится для каждой страницы перед началом вывода.

Алгоритм такой:

1) Каждый раз, когда мы достаем из базы какие-то данные, вызываем функцию lastmodified с параметром, равным дате последнего изменения строки таблицы базы данных. Вроде того:

<?

while ($row = mysql_fetch_assoc($dbanswer)) {

lastmodified($row['Modified']);

...

}

?>

2) Функция lastmodified запоминает больший из своих параметров.

3) Перед началом вывода запускается функция lastmodified_flush(), которая проверяет время изменения каждого из использованных (include) файлов.

Заодно, кстати, и Content-length посылается... Тоже полезный заголовок.

bondarevpipes.com (http://ru.bondarevpipes.com/)
N
На сайте с 21.09.2005
Offline
220
#7
T.R.O.N:
Nitro,
Last-modified можно добавить скриптом, если скажеш версии сервака и ПХП, скажу как

Apache 1.3.33 (Unix)

Php 4.3.9

Как?

N
На сайте с 21.09.2005
Offline
220
#8
jorevo:
У меня так делается (если я правильно понял вопрос):
<?
Header("Last-Modified: ".gmdate("D, d M Y H:i:s",filemtime(basename($PHP_SELF)))." GMT");
Header("Content-Type: text/html; charset=windows-1251");
?>

т.е. это выдает дату самого файла PHP, верно?

[Удален]
#9
нет, от даты все же хоть что-то зависит

Как правильно заметил zaara:

Да от даты кое-чего зависит. Выдача даты документа.
N
На сайте с 21.09.2005
Offline
220
#10
Miha Kuzmin (KMY):
Как правильно заметил zaara:

Михаил, т.е. скорость индексации сайта не зависит от того, выдается или нет дата документа роботу. В принципе, все условия и параметры индексации не зависят от того, есть дата или нет?

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий