Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Это важно
Стандарт Azure CDN от Microsoft (классическая версия) будет прекращён 30 сентября 2027 г.. Чтобы избежать сбоев в работе служб, важно перенести профили Azure CDN Standard от Microsoft (classic) на уровень Azure Front Door Standard или Premium к 30 сентября 2027 г. Дополнительные сведения см. в статье Azure CDN Standard от Майкрософт (классическая версия) — завершение поддержки.
Услуга Azure CDN от Edgio была выведена из эксплуатации 15 января 2025 г. Дополнительные сведения см. в статье Часто задаваемые вопросы о прекращении обслуживания Azure CDN от Edgio.
Предупреждение
Корпорация Майкрософт рекомендует использовать самый безопасный поток проверки подлинности. Поток проверки подлинности, описанный в этой процедуре, требует очень высокого уровня доверия к приложению и несет риски, которые отсутствуют в других потоках. Этот поток следует использовать только в том случае, если другие более безопасные потоки, такие как идентификации с управлением, не являются приемлемыми.
Служба хранения BLOB в хранилище Azure является одним из нескольких источников, интегрированных с сетью доставки контента Azure. Любое общедоступное содержимое BLOB-объектов можно кэшировать в Azure Сеть доставки содержимого до истечения времени его жизни (TTL). TTL определяется заголовком Cache-Control
в ответе HTTP от исходного сервера. В этой статье описано несколько способов задания заголовка Cache-Control
для BLOB в службе хранилища Azure.
Вы также можете управлять параметрами кэша из портал Azure, задав правила кэширования сети доставки содержимого. Если создать правило кэширования и установить его поведение кэширования на переопределение или обход кэша, настройки кэширования, предоставленные источником, о которых говорится в этой статье, будут игнорироваться. Для получения информации об общих концепциях кэширования, см. Как работает кэширование.
Подсказка
Срок жизни для BLOB-объекта можно не указывать. В этом случае Azure сеть доставки содержимого автоматически применяет срок жизни по умолчанию в семь дней, если только вы не настроили правила кэширования в портал Azure. Этот TTL по умолчанию применяется только к оптимизациям доставки веб-контента. Для оптимизаций больших файлов срок жизни по умолчанию составляет один день, а для оптимизаций потоковой передачи срок жизни по умолчанию составляет один год.
Дополнительные сведения о том, как Сеть доставки содержимого Azure ускоряет доступ к блобам и другим файлам, см. в разделе «Обзор Сети доставки содержимого Azure».
Дополнительные сведения о хранилище BLOB-объектов Azure см. в статье Общие сведения о хранилище BLOB-объектов.
Настройка заголовков Cache-Control с помощью правил кэширования сети доставки контента
Для установки заголовка Cache-Control
BLOB-объекта рекомендуем использовать правила кэширования на портале Azure. Дополнительные сведения о правилах кэширования сети доставки контента см. в разделе "Управление поведением кэширования сети доставки контента Azure с помощью правил кэширования".
Чтобы перейти на страницу правил CDN для кэширования:
На портале Azure выберите профиль сети доставки содержимого, а затем выберите конечную точку для blob.
В области слева в разделе "Параметры" выберите Правила кэширования.
Появится страница Правила кэширования.
Чтобы установить заголовки Cache-Control для службы хранения BLOB-объектов, используя глобальные правила кэширования, сделайте следующее:
В разделе Глобальные правила кэширования задайте для параметра Режим кэширования строк запросов значение Пропускать строки запросов, а для параметра Поведение кэширования — значение Переопределить.
Для параметра Срок действия кэша введите 3600 в поле Секунды или 1 в поле Часы.
Это глобальное правило кэширования задает значение длительности кэширования в один час и влияет на все запросы к конечной точке. Он переопределяет любые
Cache-Control
илиExpires
HTTP-заголовки, которые отправляются сервером-источником, указанным в конечной точке.Выберите Сохранить.
Чтобы задать заголовки Cache-Control для файла большого двоичного объекта с помощью индивидуальных правил кэширования, выполните следующие действия:
В разделе Настраиваемые правила кэширования создайте два условия соответствия.
А. В первом условии соответствия задайте для параметра Условие соответствия значение Путь и введите значение
/blobcontainer1/*
для параметра Значения соответствия. Задайте для параметра Поведение кэширования значение Переопределить и введите 4 в поле Часы.В. Во втором условии соответствия задайте параметру Условие соответствия значение Путь и введите значение
/blobcontainer1/blob1.txt
для параметра Значения соответствия. Задайте для параметра Поведение кэширования значение Переопределить и введите 2 в поле Часы.Первое настраиваемое правило кэширования задает длительность кэширования четыре часа для всех файлов больших двоичных объектов в папке
/blobcontainer1
на сервере-источнике, указанном конечной точкой. Второе правило переопределяет первое правило только для файла большого двоичного объектаblob1.txt
и задает для него длительность кэширования два часа.Выберите Сохранить.
Определение заголовков Cache-Control с помощью Azure PowerShell
Замечание
Мы рекомендуем использовать модуль Azure Az PowerShell для взаимодействия с Azure. Сведения о начале работы см. в статье "Установка Azure PowerShell". Чтобы узнать, как перейти на модуль Az PowerShell, см. статью Миграция Azure PowerShell с AzureRM на Az.
Azure PowerShell — это одно из самых быстрых и мощных средств администрирования служб Azure. Используйте командлет Get-AzStorageBlob
, чтобы получить ссылку на Блоб, а затем установите свойство .ICloudBlob.Properties.CacheControl
.
Рассмотрим пример.
# Create a storage context
$context = New-AzStorageContext -StorageAccountName "<storage account name>" -StorageAccountKey "<storage account key>"
# Get a reference to the blob
$blob = Get-AzStorageBlob -Context $context -Container "<container name>" -Blob "<blob name>"
# Set the CacheControl property to expire in 1 hour (3600 seconds)
$blob.ICloudBlob.Properties.CacheControl = "max-age=3600"
# Send the update to the cloud
$blob.ICloudBlob.SetProperties()
Подсказка
Вы также можете использовать PowerShell для управления профилями сети доставки содержимого и конечными точками.
Определение заголовков Cache-Control с помощью .NET
Чтобы указать заголовок Cache-Control
для BLOB, используйте клиентскую библиотеку Azure Storage для .NET, чтобы установить свойство BlobHttpHeaders.CacheControl.
Рассмотрим пример.
class Program
{
const string containerName = "<container name>";
const string blobName = "<blob name>";
const string connectionString = "<storage connection string>";
static void Main()
{
// Retrieve storage account information from connection string
BlobContainerClient container = new BlobContainerClient(connectionString, containerName);
// Create a blob client for interacting with the blob service.
BlobClient blob = container.GetBlobClient(blobName);
// Set the CacheControl property to expire in 1 hour (3600 seconds)
blob.SetHttpHeaders(new BlobHttpHeaders {CacheControl = "max-age=3600" });
}
}
Подсказка
Более широкий выбор примеров кода .NET доступен в примерах хранилища объектов BLOB для .NET на платформе Azure.
Определение заголовков Cache-Control с помощью других методов
Обозреватель службы хранилища Azure
С помощью обозревателя службы хранилища Azure можно просматривать и изменять ресурсы хранилища BLOB-объектов, включая такие свойства, как CacheControl.
Чтобы обновить свойство CacheControl блоба с помощью обозревателя хранилищ Azure, сделайте следующее.
- Выберите BLOB, а затем выберите Свойства в контекстном меню.
- Прокрутите меню вниз до свойства CacheControl.
- Введите значение и выберите Сохранить.
Интерфейс командной строки Azure (Azure CLI)
Вы можете управлять ресурсами BLOB-объектов Azure из командной строки с помощью Azure CLI. Чтобы установить заголовок Cache-Control при загрузке блоба с помощью Azure CLI, задайте свойство cacheControl с помощью параметра -p
. В следующем примере показано, как задать срок жизни, равный 1 часу (3600 секунд).
azure storage blob upload -c <connectionstring> -p cacheControl="max-age=3600" .\<blob name> <container name> <blob name>
API-интерфейс REST служб хранилища Azure
Вы можете использовать REST API служб хранилища Azure для явного задания свойства x-ms-blob-cache-control с помощью следующих операций по запросу:
Проверка заголовка Cache-Control
Вы можете легко проверить настройки TTL для ваших BLOB-объектов. С помощью средств разработчика браузера проверьте, включает ли ваш блоб заголовок ответа Cache-Control
. Вы также можете использовать средство, например Wget или Fiddler , для проверки заголовков ответа.