清除Azure Front Door中的缓存

适用于: ✔️ Front Door 标准版 ✔️ Front Door 高级版

Azure Front Door 会缓存资产,直到其生存时间 (TTL) 过期。 当客户端请求具有过期 TTL 的资产时,Azure Front Door检索并缓存资产的新副本来为请求提供服务。

为了确保用户始终获得最新的资产,请在每次更新时都为资产创建新版本,并通过新的 URL 发布它们。 然后,Azure Front Door 会在后续客户端请求时获取这些新资产。

更新应用程序或需要快速删除不正确的内容时,请清除所有状态点(PoP)位置的缓存内容。 此操作强制Azure Front Door从源中提取新内容。

先决条件

清除缓存

  1. 转到Azure Front Door配置文件的概述页,然后选择“清除缓存”。

    概述页上缓存清除按钮的屏幕截图。

  2. 选择一个终结点,然后选择要从 Front Door POP 中清除的域或子域。 可以选择多个域或子域。

    清除缓存页的屏幕截图。

  3. 若要清除所有资产,请选择“ 清除所选域的所有资产”。 否则,请输入要清除的每个资产的路径

运行 Clear-AzFrontDoorCdnEndpointContent,并指定以下参数来清除缓存:

  • 资源组名称。
  • 资源组中的 Azure Front Door 配置文件名称。
  • 包含需要清除资产的端点。
  • 包含要清除资产的域名和子域名。
Clear-AzFrontDoorCdnEndpointContent `
    -ResourceGroupName myRGFD `
    -ProfileName contosoafd `
    -EndpointName myendpoint `
    -Domain www.contoso.com `
    -ContentPath /scripts/*

使用必要的参数运行 az afd endpoint purge ,以清除缓存:

  • 资源组名称
  • Azure Front Door资源组中的配置文件名称
  • 具有待清除资源的端点
  • 包含待清除资产的域和子域
az afd endpoint purge \
    --resource-group myRGFD \
    --profile-name contosoafd \
    --endpoint-name myendpoint \
    --domains www.contoso.com \
    --content-paths '/scripts/*'

支持的路径格式

  • 单路径清除:通过指定不包含协议和域的完整路径(包括文件扩展名)清除一个资产。 例如,/pictures/strasbourg.png
  • 根域清除:清除路径中终结点 /* 的根目录。

Important

不支持直接清除通配符域的缓存。 为通配符域名指定子域名。 例如,指定 *.contoso.com子域,例如 dev.contoso.comtest.contoso.com。 有关详细信息,请参阅 Azure Front Door 中的通配符域

Azure Front Door上的缓存清除不区分大小写且与查询字符串无关。 清除 URL 会清除该 URL 的所有查询字符串变体。

Note

缓存清除最多可能需要 10 分钟才能传播到所有Azure Front Door POP 位置。

后续步骤