Перейти к контенту

Корректно установленное время страницы форума


Рекомендуемые сообщения

В базовой версии форумов 1.x и 2.x скрипт форума всегда возвращает текущую время/дату, что для страниц форума может быть плохо, например, с точки зрения поисковых систем, в частности - для локального поиска.

 

Для страниц с сообщениями можно возвращать в качестве времени последней модификации время последнего ответа в тему.

 

Делается это так (для версии 2.0. В версиях 1.x аналогично исправляется один файл - sources\Topics.php).

 

Открываем файл sources\lib\topic_linear.php

Ищем

        //-------------------------------------
        // Format and print out the topic list
        //-------------------------------------

 

После этих строк вписываем

        $max_time = 0;

 

Следом идёт

        while ( $row = $DB->fetch_row( $oq ) )
        {

 

после них (внутри цикла уже) вписываем

            if($row['post_date']>$max_time)
                $max_time = $row['post_date'];

 

Ищем

        //-------------------------------------
        // Print the footer
        //-------------------------------------

 

перед этими строками вписываем

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

 

Сохраняем изменения.

 

Открываем lib\topic_threaded.php

Аналогично. Ищем

        //-------------------------------------
        // Format and print out the topic list
        //-------------------------------------

 

дописываем ниже

        $max_time = 0;

 

дальше идёт

        while ( $row = $DB->fetch_row() )
        {

 

дописывем ниже

            if($row['post_date']>$max_time)
                $max_time = $row['post_date'];

 

ищем

        //--------------------------------------------
        // Sort out pagination
        //--------------------------------------------

перед этими строками вписываем тоже

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

 

Всё. Теперь форум возвращает корректные Last-Modified:

M:\...ru\all-forums\forums-1.2-balancer\sources>r "http://forums.airbase.ru/index.php?showtopic=1"
--11:05:23--  http://forums.airbase.ru:80/index.php?showtopic=1
           => `index.php?showtopic=1'
Connecting to forums.airbase.ru:80... connected!
HTTP request sent, fetching headers...
1 HTTP/1.1 200 OK
2 Date: Wed, 21 Jul 2004 07:05:22 GMT
3 Server: Apache/2.0.50 (Unix) PHP/4.3.7
4 X-Powered-By: PHP/4.3.7
5 Content-Language: ru, ru
6 Set-Cookie: session_id=378e45e764f2e2847c885f095ee1d463; path=/; domain=.airbase.ru
7 Set-Cookie: modpids=deleted; expires=Tue, 22-Jul-2003 07:05:22 GMT; path=/; domain=.airbase.ru
8 [b]Last-Modified: Mon, 28 Apr 2003 08:45:49 GMT[/b]
9 Cache-Control: no-cache, must-revalidate, max-age=0
10 Expires: Mon, 26 Jul 1997 05:00:00 GMT
11 Pragma: no-cache
12 Connection: close
13 Content-Type: text/html;charset=utf-8
14
200 OK

Ссылка на комментарий
Поделиться на других сайтах

Хм... Не знаю, не думаю, что это что-то дает. Во многих скриптах Last-Modified возвращает текущее время и ничего ;) Поправьте, если не прав :D
Ссылка на комментарий
Поделиться на других сайтах

  • 1 год спустя...
  • 7 месяцев спустя...

Форум выдает после модификации времени страницы "старье" из кеша, а не последнюю версию сообщения! Очевидно header содержит некорректную информацию.

 

Не советую ставить этот мод, во избежание проблем с обновлением страниц форума ... перспектива постоянно жать CTRL+F5 меня не устраивает, как бы при этом прекрасно не было поисковым роботам и в частности Yandex , его мнение для меня значит меньше мнения моих мучающихся пользователей форума!

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.