我想用网站及其子应用程序做一些事情(用app_offline.htm离线)。
但是我找不到找到或遍历给定站点下的虚拟目录的方法。我用
找到了网站Get-ChildItem -Path IIS:\Sites | Where {$_.Name -match $siteName}
但是,我不确定如何深入了解它的子应用程序/虚拟目录。
我在想这样的事情......
Get-ChildItem -Path IIS:\Sites | Where {$_.Name -match $siteName} | `
ForEach{
Write-Host $_.Name
Get-WebVirtualDirectory -site $siteName | Foreach {
Write-Host "Virtual Dir $_"
#DO SOME STUFF
}
}
有什么想法吗?
答案 0 :(得分:2)
谢谢诺亚。我现在意识到自己的错误。要回答我自己的问题:是的Get-VertualWebDirectory可以正常工作,但不会在该网站下获得Applicaitons。我相信这些“子网站”只对应用程序池而不是网站感到厌倦。所以我最终只是抓住该网站下的物理文件夹。
Write-Host "Taking Site [$siteName] [$state]" -ForegroundColor Cyan
$targets = @($siteName)
$site = Get-WebSite | Where { $_.Name -eq $siteName }
$apps = Get-ChildItem $site.PhysicalPath `
| Where-Object { $_ -in $appNames } `
| ForEach {
$targets += "$siteName/$_"
}
$targets | ForEach{
Change-App-Status -app $_ -state $state
}