理解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再返回给用户。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值