[英]Get list of IIS hosted site URL's using C#
我试图找到一种方法来获取托管在服务器IIS上的站点URL的列表。 这样做的目的是,在IIS中,我们拥有许多Web API,DNN Web应用程序。 因此,我正在开发一个控制台应用程序,该应用程序获取IIS托管的应用程序URL的列表,并进行HTTP调用以根据HTTP状态检查该站点是否已启动并正在运行。
请建议是否有一种方法可以满足上述要求。
你可以使用powershell-这样的事情
Get-WebBinding | % {
$name = $_.ItemXPath -replace '(?:.*?)name=''([^'']*)(?:.*)', '$1'
New-Object psobject -Property @{
Name = $name
Binding = $_.bindinginformation.Split(":")[-1]
}
} | Group-Object -Property Name |
Format-Table Name, @{n="Bindings";e={$_.Group.Binding -join "`n"}} -Wrap
然后您将通过C#代码调用Powershell
或通过cmd行:
cd c:\Windows\system32\inetsrv
appcmd list sites > c:\myBindings.txt
非常简洁!
取而代之的是,您可以查找IIS工作进程列表(每个应用程序池)及其运行状态。 要获取IIS工作进程列表,您可以参考以下链接, 如何将所有IIS工作进程列表放入我的控制台应用程序?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.