Иваныч

Рейтинг
32
Регистрация
11.10.2004
Должность
Риэлтер

Вставил после отдачи 304 потерянный exit - Я включил в апдейт морду. Ура!..

Но - СУЩИЙ АНЕКДОТ - теперь Р выкинул из индекса почти всё (из 350 страниц оставил 12).

Опять какие-нибудь совпадения?..

Fomich, В общем случае Вы, наверняка, правы, но у меня случай частный :) Я динамически не генерирую "прочих" файлов, посему ETag для них благополучно выдает апач.

Вот отклики сервера при обращении к имеющемуся на сайте файлу .doc:

c ifmod now

HTTP/1.1 304 Not Modified

Date: Mon, 28 Aug 2006 19:37:28 GMT

Server: Apache/1.3.33 (Unix)

Connection: close

ETag: "14f84e-f400-447c0e1d"

Expires: Mon, 28 Aug 2006 19:37:28 GMT

Cache-Control: max-age=0

c If-Modified-Since - 1 year (выделено жирным для Алёши)

HTTP/1.1 200 OK

Date: Mon, 28 Aug 2006 19:38:43 GMT

Server: Apache/1.3.33 (Unix)

Cache-Control: max-age=0

Expires: Mon, 28 Aug 2006 19:38:43 GMT

Last-Modified: Tue, 30 May 2006 09:19:25 GMT

ETag: "14f84e-f400-447c0e1d"

Accept-Ranges: bytes

Content-Length: 62464

Connection: close

Content-Type: application/msword

В любом случае - всем спасибо.

Попробуем еще раз.

now и -1 month - это дата IfMod-a.

lastmod - между ними.

Сервис ввыдает ифмод месячной давности, и получает 200, ведь ластмод более поздний.

Дык, меняется-то не дата документа (ее чужой сервис поменять не может), а дата выдаваемого ifmod-a

Нет, Алёша, только так и может ЧУЖЕЙ сервис спровоцировать 304.

Алёша:
заголовки у Вас обрабатываются не правильно точнее вовсе не обрабатываются

Алеша, я не понял. Проверил указанным Вами сервисом, отдача 304 на "now" и 200 на "-1 month" мне кажется правильной.

ИМХО, принципиальной разницы в кодах обработки нет, за исключением того, что exit я потерял. Тут бесспорный сеньк.

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

Ну, на Validation я давно положил...

А соотношение код/текст 1/1 (на морде) и при таблицах, по-моему, тоже не худший вариант.

Морду от 10.08 не вижу, вижу 20.07 при сортировке по дате.

http://www.yandex.ru/yandsearch?ras=1&date=&text=&lang=all&within=0&from_day=&from_month=&from_year=&to_day=15&to_month=3&to_year=2005&mime=all&Link=&numdoc=10&site=landnn.ru&ds=&how=tm

Неповоротливость и включение обработки - возможно, что и совпадение.

урл не жалко landnn.ru, заодно и верстку облайте :)

скрипт обработки:

$now=time();$headers=getallheaders();$refresh=TRUE;

if(isset($headers["If-Modified-Since"])){

$arraySince=explode(";",$headers["If-Modified-Since"]);

$since=strtotime($arraySince[0]);

if($since>=$lm)$refresh=FALSE;

}

if(!$refresh)header("HTTP/1.1 304 Not changed");

$slm=gmdate("r", $lm);

header("Last-Modified: $slm");

header("Expires: " . gmdate("r", time()+10));

Не въехал я до конца с Expires, может чё наврал?..

.htaccess

ErrorDocument 404 /e404.php

Options +ExecCGI

Options -Indexes +FollowSymLinks

RewriteEngine On

RewriteBase /

RewriteCond %{HTTP_HOST} ^www\.landnn\.ru

RewriteRule ^(.*)$ http://landnn.ru/$1

RewriteCond %{REQUEST_URI} /(.*)/

RewriteRule ^(.*)/$ /$1.php [L]

...

А не обрабатывать IfMod - это все равно, что ничего не делать...

maximumx:
На морде ссылка будет.

не будет, ибо кривая.

Бяда, реклама отменяется, т.к. юзер ничего не увидит :) , ибо фреймы... Тройки на промежуточной "расфреймизации", ну очень я намудрил со структурой. Но все, кроме Р, боди индексят...

Да и трафа - кот обрыдался, 200-300 хостов в сутки.

Всего: 273