我有一个 win 2008r2 服务器。默认网站已启用协议设置为“http,net.tcp”。当在默认网站下创建任何新应用程序时,我希望默认启用相同的协议。谁能建议如何做到这一点?目前,当我添加应用程序时,创建一个启用的协议只有“http”
4 回答
我发现使用 Powershell 的 IIS 提供程序可以做到这一点。以下行对我有用:
Set-ItemProperty IIS:\sites\$NetTcpWebsite -name EnabledProtocols -Value "http,net.Tcp"
为了让协议从网站级别级联到应用程序级别,我必须执行以下操作:
首先,我创建了网站和应用程序。其次,我运行了以下内容:
$iisAppName = %YourWebsiteName%
Set-ItemProperty IIS:\sites\$iisAppName -name applicationDefaults.enabledProtocols -Value "http,net.tcp"
这解决了原来的问题。Rob 的回答只会在网站级别设置启用的协议配置文件,这会使您的应用程序和虚拟目录没有启用适当的协议。
net 和 tcp 协议用于 WAS。默认情况下禁用它们以最小化攻击面。您是否需要托管 WCF 应用程序?
http://technet.microsoft.com/en-us/library/cc735229(v=ws.10).aspx
最好的祝福。
我为此苦苦挣扎了一段时间,并研究了将其包含在 MSI(WiX 或其他)或每个应用程序或服务的 web.config 文件中的方法。最后,最简单的解决方案是更改 IIS 中的网站默认设置,使其适用于每个应用程序和服务,而无需更改 MSI 或 web.config。基本步骤是:在 IIS 管理器中,单击站点节点,然后单击“设置网站默认值...”,将“启用协议”属性更改为 http,net.tcp