我在IIS服务器上有几个网站(在不同的端口上),其中一些使用.NET 4.0,一些使用.NET 3.5-所有这些网站都需要WCF。
是否可以在单个IIS上同时注册(3.5和4.0)WCF版本?
我尝试在IIS中注册WCF,使用:
ServiceModelReg.exe -ia (from .NET 4.0)
和
ServiceModelReg.exe -i (from .NET 3.0)
当我用最后一个命令安装WCF组件时,它会破坏运行.NET 4.0的站点,在之后
ServiceModelReg.exe -u (from .NET 3.0)
ServiceModelReg.exe -ia (from .NET 4.0)
ServiceModelReg.exe -r (from .NET 4.0)
它们工作正常,但现在使用.NET 3.5的网站坏了。
- 请确保已使用
aspnet_regiis.exe
针对IIS注册了所有ASP.NET运行时 - 确保每个应用程序都在其专用的应用程序池中运行
- 在IIS管理器控制台中设置应用程序池的.NET版本
这很有效:
1. aspnet_regiis.exe -i -enable (from v2.0...)
2. ServiceModelReg.exe -i (from v3.0Windows Communication Foundation)
3. aspnet_regiis.exe -i -enable (from v4.0...)
4. ServiceModelReg.exe -ia (from v4.0...)
5. iisreset
真的不确定发生了什么变化,也许执行顺序很重要。