Welcome! Log In Create A New Profile

Advanced

Re: Задать время кэша для отдельного файла

Maxim Dounin
October 22, 2015 04:48PM
Hello!

On Thu, Oct 22, 2015 at 08:54:59AM -0400, grey wrote:

> На сервере есть папка /images/. Для нее в конфиге настроено кэширование на 3
> дня:
>
> location ~* ^/images/.+.(jpg|jpeg|gif)$ {
> root /wwwroot/site.ru/;
> expires 3d;
> }
>
> В этой же папке лежит файл 404.jpg, его php скрипты отдают тогда, когда
> страница не найдена. Сам скрипт:
>
> header("X-Accel-Redirect: /images/404.jpg");
>
> Хотелось бы для этого файла поставить время кэширования отличное от 3 дней.

Проще и правильнее всего так:

location = /images/404.jpg {
expires epoch;
}

Подробнее о том, как писать location'ы, можно почитать тут:

http://nginx.org/r/location/ru

> Пробовал делать:
>
> header ("Expires: ".gmdate("D, d M Y H:i:s \G\M\T", time()*846000));
> или
> header ("X-Accel-Expires: 864000");
> header ("X-Accel-Redirect: /images/404.jpg");
>
> не получается. nginx игнорирует заголовки.

Заголовок Expires из исходного ответа с X-Accel-Redirect при
перенаправлении добавлен к заголовкам ответа. Однако директива
expires в вашем конфиге - заменит его на то, что указано в ней.
Потому и не получается.

--
Maxim Dounin
http://nginx.org/

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Задать время кэша для отдельного файла

grey October 22, 2015 08:54AM

Re: Задать время кэша для отдельного файла

Maxim Kozlov October 22, 2015 02:52PM

Re: Задать время кэша для отдельного файла

Maxim Dounin October 22, 2015 04:48PM

Re: Задать время кэша для отдельного файла

grey October 23, 2015 05:14AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 102
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready