题 如何使用Powershell更改IIS默认文档顺序?


我怎么能确定 Default.aspx的 是我的IIS网站的第一个默认文档?

我试过了:

Add-WebConfiguration //defaultDocument/files "IIS:\sites\Default Web Site\MyWebSite" -atIndex 0 -Value @{value="Default.aspx"}

但如果 Default.aspx的 它已经在它抱怨的列表中

Add-WebConfiguration : Filename: 
Error: Cannot add duplicate collection entry of type 'add' with unique key attribute 'value' set to 'Default.aspx'

如果有必要,我如何添加它并将其移至列表顶部(如果它尚未存在)?


7
2017-09-13 16:40






答案:


诀窍是删除'default.aspx',如果它已经在列表中的任何位置:

$filter = "system.webserver/defaultdocument/files"
$site = "IIS:\sites\Default Web Site\MyWebSite"
$file = "default.aspx"

if ((Get-WebConfiguration $filter/* "$site" | where {$_.value -eq $file}).length -eq 1)
{
   Remove-WebconfigurationProperty $filter "$site" -name collection -AtElement @{value=$file}
}

Add-WebConfiguration $filter "$site" -atIndex 0 -Value @{value=$file}

我们首先检查default.aspx是否存在,如果找到,将其删除,然后将其添加回顶部,就像您已经做的那样。


12
2017-09-13 20:26