Last-Modified и nginx

123 4
S
На сайте с 23.01.2010
Offline
70
8777

Очень прошу, подскажите как включить Last-Modified на nginx и вывести If-Modified-Since?

Сайт на wp - статьи, после слэша forum/ - форум на PHPBB3

Я в серверах не разбираюсь, но знаю где лежит файл nginx.conf ведь именно его надо будет править для включения. Но что там прописывать и что прописывать на в шаблоне сайта чтобы выдавалась дата изменения страницы я хз.

Заранее спасибО!

tommy-gung
На сайте с 22.11.2006
Offline
304
#1

поскольку там динамика, скрипты должны генерировать заголовок

Здесь не могла быть ваша реклама
S
На сайте с 23.01.2010
Offline
70
#2
tommy-gung:
поскольку там динамика, скрипты должны генерировать заголовок

подскажете как?

tommy-gung
На сайте с 22.11.2006
Offline
304
#3

для начала у поисковика спросить https://yandex.ru/yandsearch?&clid=2186620&text=wordpress%20last-modified&lr=213

таким же образом и про phpbb

S
На сайте с 23.01.2010
Offline
70
#4
tommy-gung:
для начала у поисковика спросить https://yandex.ru/yandsearch?&clid=2186620&text=wordpress%20last-modified&lr=213

таким же образом и про phpbb

Гениально.

НО

я уже гуглил и все варианты нерабочие

tommy-gung
На сайте с 22.11.2006
Offline
304
#5

sergiocharm, ок. начнем с простого - как ты проверял, что не работает?

S
На сайте с 23.01.2010
Offline
70
#6
tommy-gung:
sergiocharm, ок. начнем с простого - как ты проверял, что не работает?

http://last-modified.com/ru/ сайт аллремонт59точкару

tommy-gung
На сайте с 22.11.2006
Offline
304
#7

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

S
На сайте с 23.01.2010
Offline
70
#8
tommy-gung:
продолжим. что ты сделал, чтоб появился нужный заголовок?

Вставил код с самого сайта в <head> шаблона

<?php
$LastModified_unix = 1294844676; // время последнего изменения страницы
$LastModified = gmdate("D, d M Y H:i:s \G\M\T", $LastModified_unix);
$IfModifiedSince = false;
if (isset($_ENV['HTTP_IF_MODIFIED_SINCE']))
$IfModifiedSince = strtotime(substr($_ENV['HTTP_IF_MODIFIED_SINCE'], 5));
if (isset($_SERVER['HTTP_IF_MODIFIED_SINCE']))
$IfModifiedSince = strtotime(substr($_SERVER['HTTP_IF_MODIFIED_SINCE'], 5));
if ($IfModifiedSince && $IfModifiedSince >= $LastModified_unix) {
header($_SERVER['SERVER_PROTOCOL'] . ' 304 Not Modified');
exit;
}
header('Last-Modified: '. $LastModified);
?>

Не сработало

Так же пробовал такой


<?php $LastModified_unix = strtotime(date("D, d M Y H:i:s",
filectime($_SERVER['SCRIPT_FILENAME'])));$LastModified = gmdate("D, d M Y H:i:s \G\M\T", $LastModified_unix);
$IfModifiedSince = false;
if (isset($_ENV['HTTP_IF_MODIFIED_SINCE']))
$IfModifiedSince = strtotime(substr($_ENV['HTTP_IF_MODIFIED_SINCE'], 5));
if (isset($_SERVER['HTTP_IF_MODIFIED_SINCE']))
$IfModifiedSince = strtotime(substr($_SERVER['HTTP_IF_MODIFIED_SINCE'], 5));
if ($IfModifiedSince && $IfModifiedSince >= $LastModified_unix) {
header($_SERVER['SERVER_PROTOCOL'] . ' 304 Not Modified'); exit;
}
header('Last-Modified: '. $LastModified);?>

Тоже не сработало

S
На сайте с 30.09.2016
Offline
469
#9
sergiocharm:
$LastModified_unix = strtotime(date("D, d M Y H:i:s", 

filectime($_SERVER['SCRIPT_FILENAME'])));
...

if ($IfModifiedSince && $IfModifiedSince >= $LastModified_unix) {
header($_SERVER['SERVER_PROTOCOL'] . ' 304 Not Modified'); exit;
}

No comments...

Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
S
На сайте с 23.01.2010
Offline
70
#10
Sitealert:
No comments...

Не судите строго, ок?

Помогите лучше решить вопрос.

123 4

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