给定一个服务器名和物理路径,我希望能够找到
IISWebServer
对象和
ApplicationPool
. 网站URL也是可接受的输入。
我们的技术是IIS
六
,wmi和通过c或powershell 2访问。我相信这会更容易
IIS 7 its managed API
. 我们还没有。
我能做的是:
从获取IIS虚拟目录列表
IISWebVirtualDirSetting
对匹配的物理路径进行筛选(脱机)。
$theVirtualDir = gwmi -Namespace "root/MicrosoftIISv2" `
-ComputerName $servername -authentication PacketPrivacy `
-class "IISWebVirtualDirSetting" `
| where-object {$_.Path -like $deployLocation}
从虚拟目录对象中,我可以得到一个名称(如w3svc/40565456/root)。有了这个名字,我可以找到其他的好东西,比如
IIS web server object
.
gwmi -Namespace "root/MicrosoftIISv2" `
-ComputerName $servername `
-authentication PacketPrivacy `
-Query "SELECT * FROM IisWebServer WHERE Name='W3SVC/40589473'"
重申的问题:
1)这是一种查询语言。我可以加入或子查询以便1个WMI查询语句基于iisWebVirtualDir.path获取Web服务器吗?怎么用?
2)在解决方案1中,您必须解释如何查询Path属性。为什么查询无效?
"SELECT * FROM IISWebVirtualDirSetting WHERE Path='D:\sites\globaldominator'"