如果我查看 Visual Studio 2010 中 Web 应用程序的打包/发布设置,则会有一个选项“包括在 IIS 管理器中配置的所有 IIS 设置(仅用于 IIS Web 项目)”
我使用 IIS 而不是 VS Dev Server 来运行我的 Web 应用程序,但是当我将 Web Deploy 创建的包部署到远程服务器时,应用于我的远程 IIS 应用程序的 IIS 设置至少是陌生的,并且在最坏的情况下,完全错误。
例如,我的本地 IIS 有 2 个虚拟目录(图像、声音)。但是当我部署时,它会创建 4 个完全不同的虚拟目录(_controltemplates、_layouts、_vti_bin、_wpresources),如果我事先在远程服务器上手动创建了 2 个正确的 vdir,Web Deploy 将删除它们。 Web Deploy 是从哪里得到这些的? Web Deploy 还在远程 IIS 应用程序上错误地应用了正确的身份验证设置。
由于“包括在 IIS 管理器中配置的所有 IIS 设置”设置似乎没有选择正确的设置,我最终希望能够创建某种配置文件,Web 部署将用作其部署包的一部分。理想情况下,我可以检查源代码管理。但我无法从文档中弄清楚如何做到这一点。我看到了一些关于参数化和 list 的东西,但我不太明白。
最佳答案
这是另一篇文章可以查看。请参阅有关 IIS 配置的说明,并非所有设置都会被继承,请检查默认网站上的 Windows 身份验证是否设置为 true。
打包/发布 Web 选项卡,项目属性
http://msdn.microsoft.com/en-us/library/dd410108.aspx
关于visual-studio-2010 - 使用 Web 部署部署 IIS 设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4608078/