理解SharePoint Web Application和IIS Web Sites 和 HTTP请求

当你创建一个web application的时候,你实际上在IIS里面创建了一个站点。一个IIS站点有bindings,包含单独的IP地址,一个Host Header 和port。IIS通过Bindings来决定HTTP 请求是请求的哪个站点。

当一个用户请求一个网页的时候,比如http://intranet.contoso.com/SitePages/Home.aspx

客户端发起了一个HTTP请求。客户端通过查询DNS来获取到Host(比如intranet.contoso.com)的IP地址。客户端把host name加到了HTTP请求的数据包的host header字段里。然后客户端把HTTP请求的数据包,发送到目标IP地址(默认端口80,也可以是其他自定义端口)。IIS接到请求之后,分析数据包,并且发现,这个请求是为了Contoso Intranet 站点。

也就是说,可以在SharePoint里面,建多个Web Application, 这些站点可以使用同样的端口(比如80),但是需要有不同的host header。这样这些Web Application之间不会出现端口冲突,IIS会根据host header来判断应该由哪个Web Application来处理客户端发起的请求。

当IIS找到客户端请求的是哪个站点之后,它开启了一系列的操作,最终把结果返回给客户端。首先,IIS查找Web Application的物理路径,也叫做根目录。当你创建一个SharePoint Web Application的时候,你指定了这个路径。比如

C:\inetpub\wwwroot\wss\VirtualDirectories\clients.contoso.com80。

对于传统的APS.NET站点,真正的内容就是存储在这个路径的,但是SharePoint存储在了内容数据库里。 IIS这个时候就处理不了了,但是在web.config文件里,指定了这个站点是SharePoint Web Application,因此IIS把这个请求传递给了SharePoint。

然后,SharePoint解析这个URL,来决定是哪个Site Collection,哪个内容数据库。SharePoint获取这些数据,并返回给IIS,IIS再返回给用户。

时间: 2024-10-12 17:14:04

理解SharePoint Web Application和IIS Web Sites 和 HTTP请求的相关文章

Visual Studio Create Setup project to deploy web application in IIS

Introduction: In this article I will explain how to create setup file in visual studio 2008/2010 to deploy web application file directly in IIS or in client machine or how to place web application folder in c:\\inetpub\wwwroot folder by running setup

使用 Android 客户端向 Ruby on rails 构建的 Web Application 提交 HTTP GET 和 HTTP POST 请求

最近想弄个能访问 Internet 的 Android 应用,因为求快所以用了 Ruby on Rails 来提供 HTTP 资源.这方面的资料还是比较少的,所以把尝试的过程记录下来. 1 使用 Ruby on Rails 构建 Web Application 1.1 新建 Web Application rails new Test cd Test 1.2 生成 product rails generate scaffold product reference:string quantity:

Winfrom Installer Publish Web Application To IIS

IIS部署: 对于非技术人员来说是头疼的一件事,当到现场实施碰到客户情况也各不相同, 急需一个类似系统备份的"一键工具"快速实现应用程序部署和数据库进行关联. 网上关于这方面资源也比较混乱,其中对于IIS的编程影响因素很多,操作技巧上加以细化小结. A:获取IIS版本 IIS版本不同对应编程上基本上完全不同方式来进行的.先了解一下Iss版本在操作系统个具体要求. ISS6.0时代主要以using System.DirectoryServices空间下的DirectoryEntry 对象

WEB Application Development Integrator : 应用设置

1.1.       系统安装 应用 Oracle EBS WEB Application Development Integrator WEB ADI在Oracle EBS 11.5.10.* 版本中,配置不同: WEB ADI在Oracle EBS R12.0.4版本中,默认安装: 职责 在Oracle EBS 11.5.10.2环境中,WEB ADI的职责名:Oracle Web ADI: 在Oracle EBS R12.0.4  环境中,WEB ADI的职责名:Desktop Integ

tornado.web.Application类配置及使用

Application configuration classtornado.web.Application(handlers=None, default_host='', transforms=None, **settings)[source] A collection of request handlers that make up a web application. Instances of this class are callable and can be passed direct

基于MVC的优点Advantages of an MVC-Based Web Application

ASP.NET MVC 框架具有以下优点: 它很容易通过将应用程序划分为模型. 视图和控制器管理的复杂性. 它不使用视图状态或基于服务器的窗体.这使得 MVC 框架特别适合开发人员想要完全控制应用程序的行为. 它使用处理 Web 应用程序请求通过单一控制器前端控制器模式.这使您能够设计支持丰富的路由基础结构的应用程序.更多的信息,请参阅 MSDN 网站上的前端控制器. 它为测试驱动开发 (TDD) 提供了更好的支持. 它非常适合 Web 应用程序支持的大型团队的开发人员和 Web 设计人员需要高

web应用程序和web服务

我们在建立网站服务时,有两种不同的web开发模式: 一.web应用程序(web application):web应用程序是透过http请求来存取web服务器的网页,或执行服务端网页技术的程序,例如:ASP,ASP.NET,JSP,PHP. 二.web服务(web services):透过通讯协定SOAP或RESTful api提供资料交换和工作分享,这也是一种web应用程序,只不过是透过web服务来执行. web应用程序(web application) web应用程序简单来说就是一组网页(包含

Sharepoint 2013 出现The tool was unable to install Application Server Role, Web Server (IIS) Role

在Windows Server 2012 R2环境下运行Sharepoint 2013前置运行软件发现会出现The tool was unable to install Application Server Role, Web Server (IIS) Role.这是因为R2版本操作系统中C:\Windows\System32下的ServerManagerCmd.exe不存在,但是它有一个ServerManager.exe这样的文件. 解决方案:将ServerManager.exe复制一份并重新

Asp.net Web Application 打开 SharePoint 2010 Site 错误 The Web application at could not be found

解决办法如下: 1. 修改项目的.net framework 为3.5 2. Application Pool 选用 Sharepoint App pool 3. 修改 web.config如下: <?xml version="1.0"?> <configuration> <configSections> <sectionGroup name="system.web.extensions" type="System