【发布时间】:2012-08-30 00:27:51
【问题描述】:
我正在尝试使用 appcmd 或其他实用程序使用站点名称查找 IIS7 站点 ID,但没有找到任何方法来实现它。
【问题讨论】:
-
对于我们这些喜欢 GUI 工具的人 - IIS 管理器 - 高级设置 - ID
我正在尝试使用 appcmd 或其他实用程序使用站点名称查找 IIS7 站点 ID,但没有找到任何方法来实现它。
【问题讨论】:
以下命令返回站点 ID:
%systemroot%\system32\inetsrv\APPCMD list site <SiteName>
示例输出:
SITE "Default Web Site" (id:1,bindings:http/*:80:default.local,state:Started)
SITE "My Site" (id:2,bindings:http/*:80:my.local,state:Started)
【讨论】:
最简单的方法是加载 IIS 管理器并单击“站点”文件夹。在“功能视图”窗格中显示的列表中应该有一个名为“ID”的列,这就是您的站点 ID。
【讨论】:
你也可以试试 Powershell get-website commandlet。如果没有 args,它将列出所有站点以及 ID。
【讨论】:
这是 Powershell 的做法:
Get-Website -Name "Default Web Site" | Select -ExpandProperty ID
(将默认网站替换为您的网站名称。)
【讨论】:
将此保存为 XXX.VBS
dim lookfor: lookfor = lcase(WScript.Arguments(0))
dim ws: set ws = getobject("IIS://localhost/w3svc")
for each site in ws
if site.class = "IIsWebServer" then
if lcase(site.ServerComment) = lookfor then
wscript.echo "id=" & site.Name & ", name=" & site.ServerComment
end if
end if
next
然后从命令行
XXX.vbs site.tofind.com
或
cscript XXX.vbs site.tofind.com
【讨论】: