Cache purging in Azure Front Door with Azure PowerShell

Azure Front Door caches assets until the asset's time-to-live (TTL) expires. Whenever a client requests an asset with expired TTL, the Azure Front Door environment retrieves a new updated copy of the asset to serve the request and then stores the refreshed cache.

Best practice is to make sure your users always obtain the latest copy of your assets. The way to do that is to version your assets for each update and publish them as new URLs. Azure Front Door Standard/Premium will immediately retrieve the new assets for the next client requests. Sometimes you may wish to purge cached contents from all edge nodes and force them all to retrieve new updated assets. The reason you want to purge cached contents is because you've made new updates to your application, or you want to update assets that contain incorrect information.

Prerequisites

  • An Azure account with an active subscription. Create an account for free.
  • Azure PowerShell installed locally or Azure Cloud Shell

Note

We recommend that you use the Azure Az PowerShell module to interact with Azure. See Install Azure PowerShell to get started. To learn how to migrate to the Az PowerShell module, see Migrate Azure PowerShell from AzureRM to Az.

Azure Cloud Shell

Azure hosts Azure Cloud Shell, an interactive shell environment that you can use through your browser. You can use either Bash or PowerShell with Cloud Shell to work with Azure services. You can use the Cloud Shell preinstalled commands to run the code in this article, without having to install anything on your local environment.

To start Azure Cloud Shell:

Option Example/Link
Select Try It in the upper-right corner of a code or command block. Selecting Try It doesn't automatically copy the code or command to Cloud Shell. Screenshot that shows an example of Try It for Azure Cloud Shell.
Go to https://shell.azure.com, or select the Launch Cloud Shell button to open Cloud Shell in your browser. Button to launch Azure Cloud Shell.
Select the Cloud Shell button on the menu bar at the upper right in the Azure portal. Screenshot that shows the Cloud Shell button in the Azure portal

To use Azure Cloud Shell:

  1. Start Cloud Shell.

  2. Select the Copy button on a code block (or command block) to copy the code or command.

  3. Paste the code or command into the Cloud Shell session by selecting Ctrl+Shift+V on Windows and Linux, or by selecting Cmd+Shift+V on macOS.

  4. Select Enter to run the code or command.

Configure cache purge

Run Clear-AzFrontDoorCdnEndpointContent to purge cache after inputting the necessary parameters like:

  • Name of resource group

  • Name of the Azure Front Door profile within the resource group with assets you want to purge

  • Endpoints with assets you want to purge

  • Domains/Subdomains with assets you want to purge

    Important

    Cache purge for wildcard domains is not supported, you have to specify a subdomain for cache purge for a wildcard domain. You can add as many single-level subdomains of the wildcard domain. For example, for the wildcard domain *.afdxgatest.azfdtest.xyz, you can add subdomains in the form of contoso.afdxgatest.azfdtest.xyz or cart.afdxgatest.azfdtest.xyz and so on. For more information, see Wildcard domains in Azure Front Door.

  • The path to the content to be purged.

    • These formats are supported in the lists of paths to purge:
      • Single path purge: Purge individual assets by specifying the full path of the asset (without the protocol and domain), with the file extension, for example, /pictures/strasbourg.png.
      • Root domain purge: Purge the root of the endpoint with "/*" in the path.
Clear-AzFrontDoorCdnEndpointContent `
   -ResourceGroupName myRGFD `
   -ProfileName contosoafd `
   -EndpointName myendpoint `
   -Domain www.contoso.com `
   -ContentPath /scripts/*

Cache purges on the Azure Front Door profile are case-insensitive. Additionally, they're query string agnostic, which means to purge a URL will purge all query-string variations of it.

Note

Cache purging can takes up to 10 mins to propagate throughout the network and across all edge locations.

Next steps

Learn how to create an Azure Front Door profile.