《Windows Azure Platform 系列文章目录》
本章我们将介绍如何使用Windows Azure的Full IIS模式部署多站点和虚拟目录。
首先我们先新建一个Windows Azure Project,然后添加一个ASP.NET的Web Role。
随后在Solutio里添加一个新的Web Application,命名为WebCRM。注意,这里是直接添加了一个Web Application而不是添加一个新的Web Role。创建完毕后,修改Web CRM下的default.aspx页面,方便我们区分所浏览的页面属于哪个项目。修改如下:
打开ServiceDefinition.csdef,在Sites节点下添加一个新的Site节点,命名为WebSite2,然后通过physicalDirectory属性设置WebCRM项目所在的相对位置。然后制定这个网站绑定的endpoint,修改Binding节点的endpointName属性,设置端口为8080。修改如下:
然后在发布Windows Azure项目之前需要手动编译一下新加入的WebCRM项目。这是因为在Visual Studio的项目依赖关系中并没有把这个WebCRM项目加入到Windows Azure Roles中,因此直接发布Windows Azure项目的话这个WebCRM不会被自动编译。
然后我们按F5来调试效果。
最后我们把这个站点发布到Windows Azure平台上,通过远程桌面进入Azure VM的IIS查看,可以看到IIS中部署了两个web站点:
我们也可以通过IE浏览器访问发布后的web站点
除此之外,用户还可以实现虚拟应用程序和虚拟目录的功能。打开CSDEF文件,在第一个Site节点加入VirtualApplication节点,其name属性设置为LocalCRM,PhysicalDirectory属性设置为WebCRM项目的相对路径。这样,便可以通过这个Web站点的LocalCRM路径访问WebCRM页面。比如http://leiazurefulliis.cloudapp.net/LocalCRM
然后再VirtualApplication节点下面加入虚拟目录,比如可以将Scripts和Styles路径分别指向WebCRM下面的Scripts和Styles路径。完成后的配置文件如下:
然后我们重新发布到Windows Azure平台上。可以看到LocalCRM页面中显示的是运行于WebCRM中的内容。在CSDEF中配置的Virtual Application和Virtual Directory都起了作用。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构