在安装有WSS的IIS站点中使用Asp.net应用

问:在Windows Server 2003 上安装Microsoft Project Server 2003,并将Project Server安装到默认Web站点上。安装完成后原有或新部属的Asp.net应用程序无法访问。

答: 因为Project Server需要安装WSS来支持应用,WSS默认会被安装到默认Web站点,而且是无法修改的.。     在SharePoint术语中,一个IIS Web站点被认为是一个虚拟服务器。一个虚拟服务器必须通过WSS被扩展,以便运行于WSS Web站点。当你默认设置下安装WSS时,它将自动扩展监听于80端口的虚拟服务器。

     当WSS扩展到一 个虚拟服务器上,会在虚拟服务器上安装一个自定义的ISAPI过滤器,WSS过滤器(STSFLTR.DLL)。它将对发送到服务器的请求根据配置数据库 里的资料进行过滤,以决定哪些由WSS处理,哪些由IIS处理。扩展虚拟服务的同时,WSS还将添加一个web.config文件在主虚拟服务器的根目录 中。这个web.config文件为WSS和所有的运行于这个虚拟服务器的ASP.NET代码提供最初的配置设置。默认情况下,这个web.config 文件包含相当严格的安全设置(WSS_Minimal)。但是仅仅修改Web.config的安全设置是不起作用的。

    WSS将已扩展的虚拟服务器的URL空间分成多个受管理的路径。受WSS管理的路径被认为是被包含的路径,相反不受WSS管理的路径被认为是被排除的路 径。当WSS过滤器发现到达一个带有URL的请求,并且此URL是被排除路径的一部分,从而就可以给IIS发送一个回复,让标准ASP或ASP.NET来 处理。

   因此要开启Asp.net应用程序,只要将Asp.net应用程序的路径添加到被排除的路径中就可以访问这个应用程序了。因为这样就绕过了WSS的安全验 证。方法是:在SharePoint Central Administration中,有个Define Managed Paths的功能。在Add A New Path中添加你自己的应用程序路径即可。

参考资料:在Windows SharePoint Service平台上构建协作式应用(中文)

           Use Windows SharePoint Services as a Platform for Building Collaborative Applications(英文)

posted on 2005-01-10 19:19  djshow  阅读(3018)  评论(2编辑  收藏  举报