在 IIS7 中启用 net.tcp
如何让 IIS 处理 net.tcp 连接?
How can I make IIS handle net.tcp connections?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
如何让 IIS 处理 net.tcp 连接?
How can I make IIS handle net.tcp connections?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(4)
您需要将
net.tcp
添加到站点启用的协议中。转到 IIS 管理器,右键单击您的网站,转到“管理网站”或“管理应用程序”,然后转到“高级设置...”。在那里您会看到“启用的协议”。它可能是http
。将其更改为http,net.tcp
。如果您想配置绑定,请右键单击您的网站并转到“编辑绑定...”。默认的 net.tcp 绑定是
808:*
。如果您想使用 net.tcp 后面的 IIS 托管的 WCF 服务,您可能还需要检查是否已激活所需的 Windows 功能。转到 Windows 功能并检查您是否已激活“Windows Communication Foundation Non-HTTP 激活”(位于“Microsoft .NET Framework 3.5.1”下)。
当您激活此功能时,您将获得一些额外的Windows服务。如果仍然不起作用,请检查名为 'Net.Tcp Listener Adapter' 的 Windows 服务是否正在运行(它应该自动启动,但有时不会,这是我在启动时首先检查的地方)我的一项
net.tcp
服务停止工作)。You need to add
net.tcp
to the enabled protocols of your site. Go to IIS Manager, right-click on your website, go to 'Manage Web Site' or 'Manage Application', then to 'Advanced Settings...'. There you see 'Enabled Protocols'. It probably sayshttp
. Change it tohttp,net.tcp
.If you want to configure bindings, right-click on your website and go to 'Edit Bindings...'. The default net.tcp binding is
808:*
.If you want to use WCF services hosted by IIS behind net.tcp, you may also want to check whether you have activated the required Windows Features. Go to your Windows Features and check you have activated 'Windows Communication Foundation Non-HTTP Activation' (found under 'Microsoft .NET Framework 3.5.1').
When you activate this feature, you will get some extra Windows Services. If it still doesn't work, check that the Windows Service named 'Net.Tcp Listener Adapter' is running (it should start automatically but sometimes it doesn't and this is the first place I check when one of my
net.tcp
services stops working).这可能会对将来的某人有所帮助。我创建了一个
powershell
脚本,如果您需要 自动创建绑定。它将自动检查绑定是否已存在,并仅在需要时添加。
实际脚本
This might help someone in the future. I created a
powershell
script that will come in useful if you need to automate the creation of the bindings.It will automatically check if the binding exists already and only add it when required.
Actual Script
最后一步对我有用。
来源:缺少绑定在 IIS 中(net.tcp、net.pipe、net.msmq、msmq.formatname)
The last step worked for me.
Source: Missing bindings in IIS (net.tcp, net.pipe, net.msmq, msmq.formatname)
就我而言,我不仅必须将 net.tcp 协议添加到网站,还要添加到其下面的应用程序(右键单击应用程序、高级设置、启用协议)。
In my case, I had to add the net.tcp protocol not only to the website, but to the application below it (right-click the application, advanced settings, enabled protocols).