¿Cómo se puede reiniciar IIS en una máquina remota?Reiniciar IIS en la máquina remota
Conozco la dirección IP y la información de nombre de usuario y contraseña del usuario administrador.
¿Cómo se puede reiniciar IIS en una máquina remota?Reiniciar IIS en la máquina remota
Conozco la dirección IP y la información de nombre de usuario y contraseña del usuario administrador.
¿Qué tan remoto es el control remoto? ¿Podría simplemente ejecutar Shutdown.exe desde su código C#? Si eso no es posible (firewalls, etc.), entonces el siguiente mejor probablemente sea poner un servicio allí que pueda llamar de forma remota (¡y de forma segura!) Que apague la máquina.
esto describe cómo cerrar remotamente un _servidor_ en lugar de reiniciar únicamente el _servicio_ –
Puede utilizar el comando "sc" para controlar el iis-service en la máquina remota.
sc \\RemoteServer stop [iis-service-name]
Uso
sc help
con el fin de obtener una lista de posibles argumentos.
También eche un vistazo a a microsoft kb-article on your subject.
Usted podría utilizar sc, como sugiere Thomas Franke:
sc \\RemoteServer stop iisadmin
sc \\RemoteServer start w3svc
o SysInternals' psexec. El PsTools suite es útil para estos escenarios.
psexec \\RemoteServer iisreset
más simple habrá iisreset <servername>
símbolo del sistema Ejecutar como administrador y ejecutar el comando.
Ejemplo: Si el nombre del servidor es SRVAPP entonces orden será iisreset SRVAPP
La siguiente secuencia de comandos POSH le permitirá restablecer de forma asincrónica un conjunto de máquinas de forma remota (muy útil cuando se trabaja con un conjunto grande):
$a = Get-Content "c:\OneMachineNamePerLine.txt"
foreach($line in $a)
{
Start-Job -ScriptBlock {
iisreset $line
}
}
he probado el método basado en PowerShell, pero seguí recibiendo el siguiente error:
Connecting to remote server <TARGET-HOST> failed with the following error message : The WinRM client cannot process the request.
Finalmente descubrí que necesitaba agregar el nodo de destino como TrustedHosts
en el nodo fuente y viceversa. Si se encuentra con el mismo problema, puede solucionarlo mediante la apertura de una elevada símbolo de sistema y escribiendo los siguientes comandos:
Desde el PC que va a utilizar para emitir los comandos:
powershell
winrm set winrm/config/client '@{TrustedHosts="TARGET-HOST"}'
Desde el PC de destino (el que tiene IIS):
powershell
winrm set winrm/config/client '@{TrustedHosts="SOURCE-HOST"}'
(reemplazando TARGET-HOST
y SOURCE-HOST
con sus servidores nombres de host o direcciones IP).Tan pronto como se hace eso puede emitir cualquier control remoto PowerShell comando, tales como:
IIS Stop:
powershell invoke-command -computername "TARGET-HOST" -scriptblock {iisreset /STOP}
IIS inicio: Reiniciar
powershell invoke-command -computername "TARGET-HOST" -scriptblock {iisreset /START}
IIS :
powershell invoke-command -computername "TARGET-HOST" -scriptblock {iisreset /RESTART}
... y más.
Para una revisión extensa de este tema también puede read the following post.
Estoy usando C# y asp .net 2.0 –