繁体   English   中英

在Web应用程序项目中替代IIS虚拟目录/ URL

[英]Override IIS Virtual Directory/Url in Web Application Project

我有一个团队目前正在研究Web应用程序项目,我们希望能够通过本地IIS Web服务器运行该项目,并让每个开发人员将其映射到所需的任何虚拟目录。

当前,每次我们检入时,我们都会在cs proj文件中踩踏彼此的虚拟目录设置。

我知道我们可以只同意一个虚拟目录并坚持使用,但这不能解决我遇到的另一个问题,因为我实际上在我的机器上保留了存储库的多个副本,并希望能够将每个副本映射到一个单独的虚拟目录目录。

因此,我们正在寻找的结果将如下所示:

Dev1在说出c:/ dev / Webapp时有一个签出,映射到其本地IIS上的虚拟目录,例如localhost / WebApp

然后,开发人员2在名为c:/ workspace1 / WebApp的结帐处映射到虚拟目录,例如localhost / workspace1 / MyWebApp

与开发2的结帐处说c:/ workspace2 / WebApp映射到虚拟目录说localhost / workspace2 / WebApp

PS。 Dev 2之所以要进行两次检出,是因为他使用on进行了积极的开发工作,而另一个则在分支之间进行了合并。

在Web应用程序项目的属性中,在其中指示是否使用本地IIS服务器,可以指定“服务器”部分中的设置不存储在Project文件中,因此适用于所有用户。 这样做一次,然后应该是这样的情况,即任何开发人员都可以在不触发对项目文件的更改的情况下更改那些设置,从而防止开发人员相互踩踏。

在此处输入图片说明

这场战争进行了多次。 我们的解决方案是将项目配置为使用“内置” Web开发服务器。 然后,如果需要调试应用程序,请使用attach to process命令附加到适当的进程。 VS2010有一个扩展-vscommands,如果我没记错的话-可以通过在项目上单击鼠标右键就可以将其附加到本地IIS。

具有一些巨大的附加优势,例如,不需要安装IIS即可打开项目,还可以在不同版本的Windows上对人们友好-当我有一个使用XP,2003服务器和Vista的开发团队时,这个技巧就诞生了。同时开发团队不能被迫就“正确”的工作方式达成共识。

在这个问题上不清楚。 每个团队成员都可以在自己的本地IIS中运行该项目,在这种情况下,该项目不会与其他项目冲突。 我想您需要某种源控制,例如TFS的VSS,以使对文件的更改更加同步。

如果您的团队成员都使用Windows Vista或7,则其本地IIS必须为版本7或7.5。 IIS 7.x的优点是我们可以同时运行多个网站,而Windows XP上的IIS 5.1只能一次运行一个网站。

因此,您的团队可以使用其本地IIS中的单个网站来设置每个Web应用程序项目,而不是用“默认网站”下的虚拟目录(表示为“ localhost”)来设置。 当然,为了使他们能够这样做,他们需要在C:\\ Windows \\ System32 \\ drivers \\ etc下修改“主机”文件。

例如,如果您的团队运行多个Web应用程序项目(例如admin和public),则它们的域名可以分别为“ admin.local”和“ public.local”。 当然,这些域名必须存储在所有团队成员的“主机”文件中。

因此,它们的URL将是:

  • 本地主机/管理员-> admin.local
  • 本地主机/公共-> p​​ublic.local

我相信,如果某个项目中的成员都同意使用此功能,那么他们就不必担心虚拟目录问题,只要您从版本控制器下载文件,虚拟目录问题就会不断变化。 希望这能给您一个见识。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM