2009-08-10 104 views
1

在Visual Web Developer速成2008年:调试本地IIS和自定义Web服务器有什么区别?

我想知道与调试的区别:

使用本地IIS Web服务器

使用自定义Web服务器

我在Windows Vista上使用IIS7,唯一的区别是我注意到你需要本地IIS的IIS6兼容性组件,更重要的是,

本地IIS调试总是触发一个构建,因为自定义Web服务器不会触发一个构建,它允许您在没有调试的情况下启动您的网站,这会产生您想要调试的情况(这可能需要很长时间如果您的网站需要大量时间从memcache中获取内容,则在启动时进行数据库搜索等)。然后用自定义的网络服务器,我可以只调试网站,并拿起我已经创建的情况...

所以我想知道,为什么有人会使用本地IIS通过自定义的网络服务器。

它必须有一定的优势,否则就不会在那里......

日Thnx夏侯

回答

0

,你会与本地IIS中得到的好处包括:

  • 环境将更接近您的部署环境
  • 如果您正在使用其他ISAPI筛选器或处理程序,则需要IIS托管才能获得它们
+0

我尽可能地将IIS运行到部署环境,所以这对我来说不是一个好处。 在IIS7中,我们可以在web.config中配置我们需要的所有东西,在使用定制Web服务器时这些东西不可用? – Jaap 2009-08-10 22:09:08

+0

但是,如果您正在使用自定义的网络服务器进行调试,那么您没有使用IIS,对吧?因此,更接近您的部署设置是设置调试器使用IIS而不是定制服务器的优势。 – 2009-08-10 22:11:12

+0

嗨迈克尔, 这正是我问的问题。我在Vista上使用IIS7作为我的自定义网络服务器,因为我发现当我开始调试时,只有在需要时才构建Web应用程序。我发现使用本地IIS选项* always *调试Web应用程序会触发构建,从而重新启动站点... – Jaap 2009-08-13 19:38:41

1

另一个缺点是,当你在同一个解决方案的多个版本上工作时(例如,你在不同的目录中有不同的分支来修复bug和新的功能),那么你有一个问题,一个解决方案版本创建虚拟目录并将它映射到你的项目输出;当您打开另一个解决方案时,它会尝试执行相同的操作,但由于虚拟目录已经映射,因此会失败。您必须在加载第二个解决方案之前删除原始虚拟目录 - 当您必须在不同版本之间切换时会很痛苦。

我可以考虑解决此问题(除使用自定义Web服务器之外)的唯一方法是将工作空间重定位到不同的分支并进行同步。尽管我只知道PureCM可以做到这一点(我确信更多的SCM系统能够做到),但TFS源代码控制(来自微软,你不是在愚弄任何人,它仍然只是一件衣服的SourceSafe)这种可怕的东西我在工作中不能坚持。

相关问题