我发现在某些情况下我可以在调试时编辑源代码,使用Visual Studio内置的Web服务器而不是IIS中的虚拟目录有什么其他优点吗?
我在我的开发环境中使用Windows XP,以及IIS 5的本地实例.我在几个项目上工作,因此我使用多个虚拟目录来管理所有不同的站点.
有什么缺点吗?
用于Visual Studio的内置Web服务器称为Cassini,这里有一些限制......
它每个端口只能托管一个ASP.NET应用程序.
它不支持HTTPS.
它不支持身份验证.
它仅响应localhost请求.
与IIS相比启动缓慢
之前的所有回复都是很好的答案 - 这里有一个与Cassini的gottcha,可能需要在destkop上使用IIS.
Cassini在开发人员的环境中运行,而不是IIS用户(IUSR_,IWAM或WinXP x64,w3wp进程).如果您有一个访问外部文件或创建临时文件的网站,这可能会有点痛苦.当您的开发人员作为其桌面管理员运行时,这一点最为明显.
当您移动到服务器IIS时,您在Cassini中可以访问的内容不起作用.使用IIS_WPG进行CACLing通常只需要修复,但如果您的开发人员没有考虑这一点,他们很快就会对部署感到非常沮丧.
Cassini不支持虚拟目录
看起来第三个选项即将推出: IIS Express.
内置服务器适用于大型企业,这些企业不希望在自己的计算机上为开发人员提供任何管理员访问权限来配置IIS.
Visual Studio Web服务器//
在路径中不太宽容.
它将拒绝提供类似以下链接:
http://localhost:52632/main//images/logo.jpg
IIS将执行的操作.
这是相当模糊的,但意味着我们需要做很多修复才能摆脱所有//
事件.
我遇到的另一个缺点是在使用custom IPrincipal
/ 的Forms认证网站上IIdentity
.卡西尼号将在AppDomains
没有警告(或通知)的情况下切换.
查看这篇博客文章了解更多.对此的头痛让我放弃了卡西尼并坚持使用IIS.