在远程计算机上重新启动IIS

28 iis

如何在远程计算机上重新启动IIS?

我知道IP地址和管理员用户的用户名和密码信息.

Sun*_*wal 39

最简单的是 iisreset <servername>

以admin身份运行命令提示符并执行命令.

示例:如果服务器名称是SRVAPP,则命令将是 iisreset SRVAPP

  • 如果 iisreset commadn 不可用,请使用“打开或关闭 Windows 功能”安装 IIS &gt; Web 管理工具 &gt;&gt; IIS 管理控制台 (https://www.howtogeek.com/112455/how-to-install-iis- 8-在-windows-8/) (2认同)
  • 失败并出现错误:访问被拒绝,您必须是远程计算机的管理员 (2认同)

Dar*_*eal 8

我尝试了基于PowerShell的方法,但始终出现以下错误:

Connecting to remote server <TARGET-HOST> failed with the following error message : The WinRM client cannot process the request.

最终我发现需要TrustedHosts在源节点中将目标节点添加为a ,反之亦然。如果遇到相同的问题,可以通过打开提升的命令提示符并键入以下命令来解决此问题:

在PC上,您将用于发出命令:

powershell
winrm set winrm/config/client '@{TrustedHosts="TARGET-HOST"}'
Run Code Online (Sandbox Code Playgroud)

从目标PC(带有IIS的PC):

powershell
winrm set winrm/config/client '@{TrustedHosts="SOURCE-HOST"}'
Run Code Online (Sandbox Code Playgroud)

(替换TARGET-HOSTSOURCE-HOST与您的服务器主机名或IP地址)。一旦执行此操作,就可以发出任何远程PowerShell命令,例如:

IIS停止:

powershell invoke-command -computername "TARGET-HOST" -scriptblock {iisreset /STOP}
Run Code Online (Sandbox Code Playgroud)

IIS开始:

powershell invoke-command -computername "TARGET-HOST" -scriptblock {iisreset /START}
Run Code Online (Sandbox Code Playgroud)

IIS重新启动:

powershell invoke-command -computername "TARGET-HOST" -scriptblock {iisreset /RESTART}
Run Code Online (Sandbox Code Playgroud)

... 和更多。

要对此问题进行广泛的审查,您还可以在我的博客上阅读此文章


Geo*_*lly 5

你可以使用sc,正如Thomas Franke建议的那样:

sc \\RemoteServer stop iisadmin
sc \\RemoteServer start w3svc
Run Code Online (Sandbox Code Playgroud)

或者SysInternals的psexec.该PsTools套件是这些方案中非常有用.

psexec \\RemoteServer iisreset
Run Code Online (Sandbox Code Playgroud)


Ste*_*ins -4

远程是多远?您可以从 C# 代码中执行Shutdown.exe吗?如果这是不可能的(防火墙等),那么下一个最好的方法可能是在那里放置一个服务,您可以远程(安全地)调用该服务来关闭机器。

  • 这描述了如何远程关闭_服务器_而不是仅重新启动_服务_ (2认同)