304 ошибка

С
На сайте с 12.09.2006
Offline
0
1200

возможно уже был такой вопрос на форуме, но не нашла к сожалению...

Подскажите как правильно настроить отклик сервера на запрос If-Modified-Since для определенных страниц сайта (надо выдавать 304 ошибку)? :confused:

Shema
На сайте с 01.12.2005
Offline
176
#1


<?
$time = get_age_of_my_page_in_unix_timestamp_format ();

$request = getallheaders();

if (isset($request['If-Modified-Since']))
{
$modifiedSince = explode(';', $request['If-Modified-Since']);
$modifiedSince = strtotime($modifiedSince[0]);
}
else
{
$modifiedSince = 0;
}
if ($time <= $modifiedSince)
{
header('HTTP/1.1 304 Not Modified');
exit();
}
?>
Студия Design Coda (http://www.designcoda.ru/). Личные контакты: +7(903)1367564, skype:andrey.oshemkov, telegram:@oshemkov. WMID: 492025973671 (https://passport.webmoney.ru/asp/certview4.asp?wmid=492025973671), делаем и рекламируем сайты, мобильные приложения, ботов для Telegram.
С
На сайте с 12.09.2006
Offline
0
#2

Shema, спасибо... а если сайт перловый? вот в чем главная проблема ;)

Shema
На сайте с 01.12.2005
Offline
176
#3
Санька:
Shema, спасибо... а если сайт перловый? вот в чем главная проблема ;)

Я давно не писал на Перле, поэтому код приводить не буду, чтобы не наврать.

Но все идеи являются независимыми от языка программирования.

Если Вы знаете Perl, думаю, Вам не составит труда переписать этот код на него.

Аналог функции header - просто написать


print "HTTP/1.1 304 Not Modified\n";

перед


print "Content-Type: text/html\n\n";

(точнее Content-Type уже можно будет вообще не выводить)

Аналог getallheaders поищите, это должна быть скорее всего просто какая-нибудь переменная.

С
На сайте с 12.09.2006
Offline
0
#4

Shema, вот собственно что и хотела увидеть))) как раз таки аналог был нужен... большое человеческое спасибо

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