Файл CSS не обновляется в Azure Deploy / Publish - PullRequest
4 голосов
/ 30 марта 2012

ПОСТАНОВИЛИ Без моего ведома, Cloudflare по умолчанию кэширует все файлы css / js в течение 4 часов.

Сценарий:

Я добавляю это на нашу первую страницу:

<span class="test">hullo!</span>

и это в наш файл CSS:

.test { font-size:2.0em; }

Я выполняю веб-развертывание, ИЛИ полную публикацию в Azure, и на первой странице появляется диапазон, но не стиль. Файл CSS по какой-то причине не обновляется. FF, IE, Chrome и Safari подтверждают это. Однако после, казалось бы, произвольного времени файл css обновляется.

Даже когда я удаленно подключаюсь к виртуальной машине Azure и перезапускаю приложение, стилизация не изменяется. Приложение работает на один экземпляр, одну роль. Кэширование Azure не настроено. Добавление параметра строки запроса к ссылке на файл CSS не помогает. Похоже на проблему с кэшированием, но не знаю, как ее решить.

Есть идеи?

Ответы [ 4 ]

4 голосов
/ 03 апреля 2012

"Мы используем Cloudflare, который по умолчанию настроен для кэширования всех файлов CSS и JS. Он очищает кэш каждые 4 часа, что приводит к произвольным обновлениям. Поэтому, хотя я добавлял новую строку запроса в конециз файла css Cloudflare по-прежнему кэширует старый файл "

Просто заметим, что вам следует перейти в режим разработки CloudFlare при внесении изменений в файлы статического содержимого на вашем сайте.Вы можете перейти в режим разработки, чтобы обойти кеш, перейдя в: настройки-> режим разработки.У вас также есть опция очистки кеша в качестве дополнительной опции, которую мы рекомендуем, если вы действительно хотите очистить все.

2 голосов
/ 30 марта 2012

Похоже, это кешируется вашим браузером. Можете ли вы попробовать перейти на ваш сайт и нажмите Ctrl + F5.

Может быть, вы можете использовать Fiddler, чтобы увидеть, был ли CSS кэширован или не обновлен, или какая-то ошибка при загрузке.

1 голос
/ 31 марта 2012

Эта проблема решена.

Мы используем Cloudflare, который по умолчанию настроен для кэширования всех файлов CSS и JS. Он очищает кэш каждые 4 часа, что приводит к произвольным обновлениям. Поэтому, хотя я добавлял новую строку запроса в конец файла CSS, Cloudflare все еще кэшировал старую.

0 голосов
/ 30 марта 2012

Я имел дело с этим, и я скажу вам, что из моего опыта работы с Chrome вы можете установить параметр, который отключает кэш в инструментах разработчика, однако, я заметил, что если у вас не открывается окно инструментов для разработки, когда вынажмите Ctrl + F5, чтобы не перезагрузить кеш.В IE есть глобальная настройка в инструментах разработчика, которая заставляет его каждый раз перезагружать все.В Firefox также есть настройка в инструментах разработчика, которая потребует, чтобы он загружал и не использовал кеш.

Один из способов, которым вы можете проверить это, и как я это проверяю, это запустить Fiddler и посмотреть,он выполняет полную загрузку всех ваших файлов или, если он кэшируется.

Из того, что я испытал, действительно возникает проблема с кэшированием в браузере, а не с Azure.

...