是否可以在 IIS 7.5 中运行 ASP.NET,而无需创建虚拟目录或应用程序?
我有一个持续集成服务器,其中有数十个托管在 IIS 上的 ASP.NET 应用程序。每次我想要部署一个新的应用程序时,我都必须创建一个新的网站或虚拟目录并将其配置为 IIS 中的应用程序。
我真的很希望只有一个网站侦听特定端口(例如 80),根据通配符主机标头为多个 ASP.NET 站点提供服务。
例如:
*.dev.mydomain.int ->我的服务器的IP地址(例如:192.168.1.32)
IIS网站读取主机标头并尝试查找具有相同名称的本地文件夹。例如:当请求使用主机头“helloworld.dev.mydomain.int”时,IIS 尝试打开一个附加主机头站点名称的预配置文件夹(例如:D:\dev\helloworld),
IIS 将该文件夹的内容作为ASP.NET 应用程序,使用预设配置(应用程序池、ASP.NET 版本等)。
我的目标不是为 CI 服务器中的每个项目创建一个网站或虚拟目录。我知道我可以以编程方式创建它们,但我更喜欢更动态的解决方案。
提前致谢
I have a Continuous Integration server with dozens of ASP.NET applications hosted on IIS. Everytime I want to deploy a new application, I have to create a new Website or virtual Directory and configure it as an application in IIS.
I would really love to have only one website listening in a specific port (say, 80) serving multiple ASP.NET sites according to wildcard host headers.
For instance:
*.dev.mydomain.int -> my server's ip address (eg: 192.168.1.32)
IIS web site reads the host header and try to find a local folder with the same name. Ex: when a request uses the host header "helloworld.dev.mydomain.int" IIS tries to open a preconfigured folder appending the host header site name (e.g: D:\dev\helloworld)
IIS serves the contents of the folder as an ASP.NET application, using preset configurations (Application Pool, ASP.NET version, and so on).
My goal here is not to create a web site or virtual directory for each and every project in our CI server. I know I can create them programmatically, but I'd prefer a more dynamic solution.
Thanks in advance
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用 MSBuild 任务 自动创建虚拟目录/网站。
http://fczaja.blogspot.com/2009 /02/automatic-deployment-of-webapp-on-iis.html
我让它在具有许多分支的大型应用程序上运行(我们为每个分支都有一个环境),并且我不必打开 IIS 设置根本不。只是纯粹的放手过程。
You can use MSBuild tasks to create Virtual Directories / Web sites automatically.
http://fczaja.blogspot.com/2009/02/automatic-deployment-of-webapp-on-iis.html
I had it working on a large application with many branches (we had an environment for each branch) and I didn't have to open IIS settings at all. Just pure hands-off process.