2012-03-08 17 views
12

Quiero agregar un enlace a un sitio usando appcmd. Pero cuando intento el siguiente comando consigo un error:Error al usar appcmd para agregar el enlace ssl

appcmd set site /site.name:"My site name" /+bindings.[protocol='https',bindingInformation='*:443:sub.mydomain.com'] 

El error:

ERROR (message:Cannot find SITE object with identifier "bindingInformation='*:443:sub.mydomain.com']".) 

que comprueba si existe el sitio y lo hace. ¿Qué estoy haciendo mal?

Respuesta

10

Prueba esto:

appcmd set site "My site name" /bindings:"https://sub.mydomain.com:443" 

Sin embargo, su orden es correcta también. Una lista de todos los sitios web y asegúrese de que está utilizando uno de ellos:

appcmd list site 
+0

Dónde DIT se obtiene sin la sintaxis '/ +' o '/ -' de? ¿Puede proporcionar el enlace a la documentación por favor? –

14

Si está utilizando PowerShell, hay que rodear el parámetro fijaciones con comillas dobles para que PowerShell no interpreta las comillas simples antes de la orden se envía a appcmd.

./appcmd set site /site.name: contoso /+"bindings.[protocol='https',bindingInformation='*:443:']" 

fuente: http://technet.microsoft.com/en-us/library/cc731692(v=ws.10).aspx

+0

¡Gracias! Me estaba dando un dolor de cabeza tratando de hacer que esto funcione en PowerShell. :) –

0

me encontré con un problema en PowerShell con los dos puntos en los enlaces. Concatenarlos resolvió el problema.

[string] $cmd = "$Env:windir\SysWOW64\inetsrv\APPCMD.exe" 
$response = invoke-expression "$cmd add site /name:""$SiteName"" /id:$ID /+""bindings.[protocol='$Protocol',bindingInformation='$IP"+":$Port"+":']"" /physicalPath:""$Path""" 
0

Debe ejecutar su comando como administrador.

0

Nunca pude hacer que esto funcionara con un certificado comodín para * .midominio.com con lo que pensé que era un nombre bastante amigable: "mydomain.com plus wildcard". Ejecutaría los comandos de arriba, entré en IIS y miraba los enlaces y estaría allí, pero sin un certificado seleccionado. Seleccionar el certificado eliminaría el nombre del host y lo desactivaría, así que no pude cambiarlo.

Finalmente funcionó cambiando el nombre descriptivo del certificado comodín al formato esperado por IIS ("* .midominio.com") y añadiéndolo normalmente a través de la interfaz IIS, no tengo idea de si los comandos appcmd anteriores funcionarían . La moraleja de esta historia es dar certificaciones comodín al nombre amigable de la forma estándar.

0

he creado un archivo por lotes para lograr que:

@echo off 

set /p sitename="Enter the site Name (as displayed in IIS): " %=% 
set /p siteurl="Enter the site Host Header(the site url): " %=% 
set /p siteip="Enter the site IP Address (ip address or *): " %=% 
set /p siteprotocol="Enter the site Protocol (http, https, etc): " %=% 
set /p siteport="Enter the site Port (80, 443): " %=% 

appcmd set site /site.name:"%sitename%" /+bindings.[protocol='%siteprotocol%',bindingInformation='%siteip%:%siteport%:%siteurl%'] 

pause 
Cuestiones relacionadas