gpt4 book ai didi

wcf - restart/iisreset 禁用 NET.TCP 协议(protocol)?

转载 作者:可可西里 更新时间:2023-11-01 02:31:35 25 4
gpt4 key购买 nike

我在 Windows Server 08 sp2 上的 IIS7 中托管 WCF 服务。该服务托管为自己的网站,并通过 NET.TCP 端点公开。在发出重新启动/iisreset 命令之前,该服务工作正常。

重启或 iisreset 后,当我进行任何服务调用时,我收到以下错误:'System.ServiceModel.EndpointNotFoundException: 无法发送消息,因为端点地址 'net.tcp://[website]/[service_name].svc' 的服务对于该地址的协议(protocol)不可用..'

服务器的事件日志显示以下错误:'尝试读取和实例化配置的 ProcessHandlerType 时发生错误。异常:System.ArgumentException消息:未知协议(protocol) ID“NET.TCP”。StackTrace: 在 System.Web.Hosting.ProcessHost.StartProcessProtocolListenerChannel(String protocolId, IListenerChannelCallback listenerChannelCallback) '

问题:我该如何解决?为什么在 iisreset 后 NET.TCP 协议(protocol)被禁用?这是一个错误吗?我是否缺少某些配置?

IIS 设置细节:- 服务器 08 和 08 R2- 绑定(bind):http、NET.TCP (808:*)- EnabledProtols:http、NET.TCP。- 站点的 appPool 的身份设置为特定用户。

此处提供示例代码:http://drop.io/wcfTcpSampleService

谢谢

最佳答案

已解决。问题是区分大小写。在 Web 应用程序的 AdvancedSettings 中,EnabledProtocols 字段必须是小写的,即“net.tcp”(我刚刚从 MS 支持那里了解到这一点)。

我假设(愚蠢地)'NET.TCP' 应该是大写的,因为 EnabledProtocols 字段的描述(“...添加这些值,例如 NET.TCP...”)。

奇怪的、未知的问题是为什么它会第一次与“NET.TCP”一起工作,但这是另一个问题。

感谢大家的帮助。

关于wcf - restart/iisreset 禁用 NET.TCP 协议(protocol)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3049811/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com