无法确定来自目标计算机 wsman 的 HTTP 响应的内容类型

无法确定来自目标计算机 wsman 的 HTTP 响应的内容类型

我正在尝试使用 PowerShell 通过 wsman 连接连接到 Exchange 服务器。有问题的客户端服务器位于工作组中,而 Exchange 服务器位于其自己的域中。

我使用以下命令尝试连接到服务器:

connect-wsman -connectionuri http://servername/PowerShell -credential domain\administrator

然后我收到完整的错误:

连接到远程服务器失败,并显示以下错误消息:WinRM 客户端无法处理请求。它无法确定来自目标计算机的 HTTP 响应的内容类型。内容类型缺失或无效。有关详细信息,请参阅 about_Remote_Troubleshooting 帮助主题。

以前,当相关客户端服务器与 Exchange 服务器位于同一域中时,此方法有效。防火墙已关闭,所有服务器都是 WinRM 的 TrustedHosts。

有趣的是,当我使用:

connect-wsman -computername servername -credential domain\administrator

我没有收到任何错误。但是,我需要能够使用 URI 而不是计算机名称。

有任何想法吗?

答案1

我认为您连接的是错误的端口。端口 80 上可能正在运行其他服务(不是 wsman),但在您的 URI 中,您没有指定端口,因此它假定端口为 80

http://servername

除非您确实在 Exchange 服务器上使用端口 80 作为 wsman,否则您应该指定端口(例如使用端口 5985):

http://servername:5985

要找出您需要哪个端口,您应该登录 Exchange 服务器,启动 powershell 并运行以下命令:

Get-WSManInstance -ResourceURI winrm/config/listener -Enumerate

您可以从客户端 powershell 使用一个测试函数(请参阅http://technet.microsoft.com/en-us/library/hh849873.aspx):

test-wsman http://servername:port  

答案2

我通过将客户端与目标放在同一个域中解决了这个问题。之前由于一些外部问题,这是不可能的,但这些问题已经解决了。

相关内容