PowerShell принципиально нечувствителен к регистру (например, "HEy" -like "hey"
- True
).
Если вы хотите использовать регистрозависимую версию like
, используйте -clike
.
Другой способ - сохранить статические изображения, CSS и js на другом сервере (таком как CDN ), у которого правильно установлен заголовок Expires. У этого есть два преимущества:
Стоит иметь в виду, что даже без заголовков Cache-Control или Expires большинство браузеров будут кэшировать контент, такой как JS и CSS. Что должно произойти, так это то, что браузер должен запрашивать ресурс каждый раз, когда это необходимо, но обычно получает ответ «304 Unmodified», и браузер затем использует кэшированный элемент. Это все еще может быть довольно дорогостоящим, поскольку это круговой обход сервера, но сам ресурс не отправляется, поэтому передаваемые байты ограничены.
IE, оставшийся без конкретных инструкций относительно кеширования, по умолчанию будет использовать свою собственную эвристику для определения если он должен даже потрудиться повторно запросить элемент, который он кэширует. И это несмотря на то, что явно не сказано, что он может кэшировать ресурс. Его херистика основана на дате последнего изменения ресурса, чем старше он, тем менее вероятно, что он » Теперь я изменился, - вот его типичные рассуждения.
Откровенно говоря, если вы хотите сделать сайт работающим, вам нужно иметь контроль над такими настройками кеша. Если у вас нет доступа к этим настройкам, не беспокойтесь о производительности. Просто сообщите спонсору, что он может не работать должным образом, потому что он не предоставил платформу, которая позволяет вам это сделать.
Если вы не настроите IIS для предоставления asp.net управления запросами js / css / image, он не увидит их по умолчанию, поэтому ваш лучший план (для долгосрочной поддержки) - это намеренная настройка заголовки ответов на вашем брандмауэре / диспетчере трафика / сервере или (лучше, чем большинство людей в мире на данный момент) для версии ваших файлов в пути, то есть:
Вместо напишите это в разметке:
http://www.foo.com/cachingmakesmesad.css
Используйте это:
http://www.foo.com/cachingmakesmesad.css?v1
.. и измените номер версии, когда вам нужно эффективно очистить кеш. Если бы это было каждый раз, тогда вы могли бы даже добавить вместо этого GUID или дату, но я не могу придумать ни одного случая, когда я действительно хотел бы это сделать.
Я думал, что ваш вопрос был против кеширования, но перечитал его. видите, я зря потратил там хороший ответ: P
Короче говоря, браузеры обычно очень агрессивно кэшируют "простые" ресурсы, поэтому вам не стоит беспокоиться об этом, но если вы действительно хотите что-то с этим сделать, вам потребуется доступ к межсетевому экрану / диспетчеру трафика / IIS по причинам, указанным выше (ASP.NET по умолчанию не получит шанса.)
Однако ... Вы не можете полностью принудительно кэшировать, да и не должны. Решение о том, что кэшируется, а что нет, по праву принимает конечный пользователь, все, что вы можете сделать, - это настоятельно запросить.
Вы не можете полностью принудительно кэшировать, да и не должны. Решение о том, что кэшируется, а что нет, по праву принимает конечный пользователь, все, что вы можете сделать, - это настоятельно запросить. Вы не можете полностью принудительно кэшировать, да и не должны. Решение о том, что кэшируется, а что нет, по праву принимает конечный пользователь, все, что вы можете сделать, - это настоятельно запросить.Лучше всего установить заголовок Expires в IIS для папок, содержимое которых нужно кэшировать. Это укажет большинству современных браузеров и прокси-серверов кэшировать этот статический контент. В IIS 6:
Блог разработчиков Yahoo рассказывает об этой технике .
В .net вы можете настроить свой JavaScript, CSS и изображения как встроенные ресурсы. .Net обработает истечение срока действия файла за вас. Обратной стороной этого подхода является то, что вам нужно создавать новую сборку для каждого набора изменений (это может быть положительным моментом, в зависимости от вашего развертывания и рабочего процесса).
Вы также можете использовать ETags, но, насколько я понимаю, в некоторых В некоторых случаях это не сработает, если у вас есть несколько веб-серверов IIS и apache, на которых размещены ваши изображения , (или если вы планируете переключиться в будущем).
Вы можете просто убедиться, что дата файла указана. новее, и пусть сервер сделает это за вас, но вы должны убедиться, что сервер настроен правильно.