如何通过PowerShell完全清理Azure CDN缓存?
解决Azure RM CDN端点全层级内容清理问题
我来帮你搞定这个CDN缓存清理的难题!你遇到的问题是因为Unpublish-AzureRmCdnEndpointContent的-PurgeContent参数对通配符的解析规则:单独的"/*"只会匹配根目录下的直接文件,不会递归清理嵌套子目录里的内容。
正确的全量清理命令
要一次性清理所有层级的全部内容,你需要使用"/**"这个通配符模式——它会匹配任意路径下的所有文件(包括所有嵌套子目录)。修改后的命令如下:
Unpublish-AzureRmCdnEndpointContent -EndpointName $endpointName -ProfileName $profileName -ResourceGroupName $resourceGroupName -PurgeContent "/**"
如果某些旧版本的AzureRM模块对"/**"支持不够完善,你可以同时传递两个通配符路径来确保覆盖所有场景:
Unpublish-AzureRmCdnEndpointContent -EndpointName $endpointName -ProfileName $profileName -ResourceGroupName $resourceGroupName -PurgeContent "/*", "/**"
补充说明
"/*":匹配根目录下的所有直接文件(不含子目录内的文件)"/**":匹配所有层级的所有文件(包括所有嵌套子目录)- 这个参数支持传递多个路径值,用逗号分隔即可覆盖不同的匹配范围
内容的提问来源于stack exchange,提问作者Joannes Vermorel
相关产品推荐
相关产品推荐

