ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Можно ли боротся с кэшэм страницы-заглушки?



On 03.08.2010 12:04, Igor Sysoev wrote:

использую try_files /maintance.html @codeigniter;

и когда я создаю файл maintance.html
(заглушка), срабатывает nginx и "всё идёт
по плану". но беда, страница эта
попадает в кеш и когда я удаляю файл
maintance.html то пользователи продолжают её
видеть. срабатывает только нажатие
cntrl+f5(r)

location = /maintenance.html {
     root ...;
     expires -1;
}

Это не поможет.
/maintenance.html обрабатывается внутри location'а с try_files.

У меня появилась такая идея: добавить модификатор к имени для выполнения
внутреннего редиректа, что-то вроде:

       try_files  /maintenance.html>   $uri  $uri/  =404;

Варианты: ">", "*>", "=>", "~>".

а может быть такой вариант:

синтакис:

try_files {files} [+@location_yes] [@location_no];
переход в @location_yes если какой-либо файл найден
переход в @location_no если ни один из файлов не найден

варианты:

try_files {files} @location_no;
try_files {files} +@location_yes;
try_files {files} +@location_yes @location_no;

пример:

location / {
    root /home/www/example.com/htdocs;
    try_files /maintenance.mode +@maintenance;
    try_files $uri $uri/ @codeigniter;
}

location @maintenance {
    root /home/www/example.com/maintenance/htdocs;
    index maintenance.html
    expires -1;
}

или как вариант:

location @maintenance {
    return 200 "Site in maintenance-mode. Please try again later."
    expires -1;
}

при этом файл /maintenance.mode может быть пустым, и перевод
сайт в/из режима maintenance можно проводить простым способом:

touch /maintenance.mode
...
rm /maintenance.mode

--
Best regards,
 Gena


_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.