【问题标题】:How to use AppCMD to test and see if a website exists in IIS7 using the Site's Name?如何使用 AppCMD 使用站点名称测试并查看 IIS7 中是否存在网站?
【发布时间】:2013-03-29 03:47:51
【问题描述】:

我想使用 appcmd 向站点添加新绑定,但我需要先查看它是否存在。我怎样才能使用 AppCMD 做到这一点?

非常感谢!

【问题讨论】:

    标签: appcmd


    【解决方案1】:

    您可以指定 site.name 并使用命令行在一行中执行此操作:"%systemroot%\system32\inetsrv\AppCmd.exe" list apps /path:"/PORTALSiteName" /site.name:"Default Web Site" && ECHO EXISTS

    【讨论】:

      【解决方案2】:

      这是 PowerShell 方式:

      $exists = (&$appcmd list apppool /name:'MyApplicationPool') -ne $null
      
      if ($exists -eq $false)
      {
          Write-Host 'App Pool does not exist'
      }
      else
      {
          Write-Host 'App Pool exists'
      }
      

      【讨论】:

        【解决方案3】:

        您可以使用以下代码创建批处理文件:

        @ECHO OFF
        
        SET appcmd=CALL %WINDIR%\system32\inetsrv\appcmd
        
        %appcmd% list site /name:"Default Web Site"
        IF "%ERRORLEVEL%" EQU "0" (
            ECHO EXISTS
            REM Add your bindings here
        ) ELSE (
            ECHO NOT EXISTS
        )
        

        【讨论】:

        • 这适用于*节点,但是位于“默认网站”下的站点呢?