Re: Кэширование статики.

Валентин Бартенев vbart at nginx.com
Fri Nov 15 13:19:18 UTC 2013


On Friday 15 November 2013 14:52:57 toxi-kb wrote:
> Добрый день. У меня есть проблема со статикой. Я, к сожалению, не в силах
> решить её своими силами, поэтому буду благодарен за любую помощь.
> Суть проблемы: есть сайт, который работает на связке nginx + uwsgi +
> django. Когда мы заливаем изменения, нужно отключить доступ к сайту у
> обычных пользователей и оставить доступ у разработчиков. Решается это
> следующим образом:
> 1) В файле конфигурации: основное приложение перебрасывается на порт 8000,
> а на 80 отдается заглушка, говорящая о том, что у нас идут обновления.
> Nginx перезагружается.
> 2) Проходят какие-то технические работы.
> 3) Заглушка и основное приложение меняются портами в конфигурации. Nginx
> снова перезагружается.
> После этого, если зайти в приложение, мы не обнаруживаем часть картинок,
> причем у всех это разные картинки, а у кого-то вовсе нет проблем с этим.
> Т.е. запрос к картинке возвращает 404. Если сбросить кэш в браузере - все
> устаканится и статика вернется на место.
> Собственно вопрос: что с этим можно сделать, как исправить данную проблему
> и с чем она связана?
> Конфигурацию прилагаю в виде ссылки: http://prntscr.com/249v0c
> Заранее, большое спасибо за помощь!
> 

Казалось бы, причем тут nginx?

Необходимо использовать версионирование в ссылках.

Скажем было /media/style/logo.png?1 , а когда загружаете новую версию файла - 
увеличиваете версию: /media/style/logo.png?2

--
Валентин Бартенев


Подробная информация о списке рассылки nginx-ru