2013-04-12 246 views
1

我一直在使用Visigo.Sharepoint.FormsBasedAuthenticaiton Web部件注册时遇到问题。有些时候会出现“未知错误”显示,有时会显示错误,这让我相信这与服务器场中的其中一台服务器有关。所以我直接去了server1上的登录页面,一切都很好,当我去到server2上的登录页面时,我得到一个错误页面,上面写着“找不到文件”。Sharepoint 2010服务器场,第二台服务器上的页面丢失错误

我使用错误屏幕上提供的Correlation ID查看了日志,发现这似乎指向PasswordRecoveryWebPart是问题。

System.IO.FileNotFoundException: The Web application at http://site2/pages/login.aspx could not be found. Verify that you have typed the URL correctly. If the URL should be serving existing content, the system administrator may need to add a new request URL mapping to the intended application. 
    at Microsoft.SharePoint.SPSite..ctor(SPFarm farm, Uri requestUri, Boolean contextSite, SPUserToken userToken) 
    at Microsoft.SharePoint.SPSite..ctor(String requestUrl) 
    at Visigo.Sharepoint.FormsBasedAuthentication.Utils.GetMembershipProvider(HttpContext context) 
    at Visigo.Sharepoint.FormsBasedAuthentication.PasswordRecoveryWebPart.AddPasswordRecoveryControl() 
    at Visigo.Sharepoint.FormsBasedAuthentication.PasswordRecoveryWebPart.CreateChildControls() 
    at System.Web.UI.Control.EnsureChildControls() 
    at System.Web.UI.Control.PreRenderRecursiveInternal() 
    at System.Web.UI.Control.PreRenderRecursiveInternal() 
    at System.Web.UI.Control.PreRenderRecursiveInternal() 
    at System.Web.UI.Control.PreRenderRecursiveInternal() 
    at System.Web.UI.Control.PreRenderRecursiveInternal() 
    at System.Web.UI.Control.PreRenderRecursiveInternal() 
    at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) 

我开始比较两台服务器上的FBA布局和功能文件,但没有看到丢失的东西。我不确定接下来要看什么,以及可能的补救措施是什么。谢谢。

更新

基于下面一个问题,我一直在试图登录到第二个服务器,这样我可以去网站设置页面,并期待在FBA用户管理信息。由于我的登录页面与注册页面相同,因此在第二台服务器上出错,我创建了一个只有自定义登录Web部件的新页面。不幸的是,我直接访问第二台服务器时似乎无法登录,并在日志中获取这些错误。

SPSecurityTokenService.Issue() failed: System.NullReferenceException: Object reference not set to an instance of an object. 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.SPRequestInfo.ValidateFormsAuthProviderNames(Uri context, String membershipProvider, String roleProvider) 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.SPRequestInfo.SetProviderNames(RequestSecurityToken request) 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.SPRequestInfo..ctor(IClaimsIdentity identity, RequestSecurityToken request, Boolean initializeForActor) 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.SPRequestInfo..ctor(IClaimsPrincipal principal, RequestSecurityToken request) 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.GetTokenLifetime(Lifetime requestLifetime) 
    at Microsoft.IdentityModel.SecurityTokenService.SecurityTokenService.Issue(IClaimsPrincipal principal, RequestSecurityToken request) 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.Issue(IClaimsPrincipal principal, RequestSecurityToken request)  

Request for security token failed with exception: System.ServiceModel.FaultException`1[System.ServiceModel.ExceptionDetail]: Object reference not set to an instance of an object. (Fault Detail is equal to An ExceptionDetail, likely created by IncludeExceptionDetailInFaults=true, whose value is: System.NullReferenceException: Object reference not set to an instance of an object. 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.SPRequestInfo.ValidateFormsAuthProviderNames(Uri context, String membershipProvider, String roleProvider) 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.SPRequestInfo.SetProviderNames(RequestSecurityToken request) 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.SPRequestInfo..ctor(IClaimsIdentity identity, RequestSecurityToken request, Boolean initializeForActor) 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.SPRequestInfo..ctor(IClaimsPrincipal principal, RequestSecurityToken request) 
    at Microsoft.SharePoint.IdentityModel.SPSecurityTokenService.GetTokenLifetime(Lifetime requestLifetime) 
    at Microsoft.IdentityModel.SecurityTokenService.SecurityTokenService.Issue(IClaimsPrincipal principal, RequestSecurityToken r...) 

System.ServiceModel.FaultException`1[[System.ServiceModel.ExceptionDetail, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]: Object reference not set to an instance of an object. 
    at Microsoft.IdentityModel.Protocols.WSTrust.WSTrustChannel.ReadResponse(Message response) 
    at Microsoft.IdentityModel.Protocols.WSTrust.WSTrustChannel.Issue(RequestSecurityToken rst, RequestSecurityTokenResponse& rstr) 
    at Microsoft.IdentityModel.Protocols.WSTrust.WSTrustChannel.Issue(RequestSecurityToken rst) 
    at Microsoft.SharePoint.SPSecurityContext.SecurityTokenForContext(Uri context, Boolean bearerToken, SecurityToken onBehalfOf, SecurityToken actAs, SecurityToken delegateTo) 
    at Microsoft.SharePoint.SPSecurityContext.SecurityTokenForFormsAuthentication(Uri context, String membershipProviderName, String roleProviderName, String username, String password, Boolean isPersistent) 
    at Microsoft.SharePoint.IdentityModel.SPClaimsUtility.AuthenticateFormsUser(Uri context, String userName, String password) 
    at UHPS.Login.Login.loginControl_Authenticate(Object sender, AuthenticateEventArgs e) 
    at System.Web.UI.WebControls.Login.AttemptLogin()  at System.Web.UI.WebControls.Login.OnBubbleEvent(Object source, EventArgs e) 
    at System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args)  at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) 
    at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) 
+0

您能否提供更多详细信息?您如何部署Web部件,以及您为此Web应用程序设置的备用访问映射是什么。另外,成功的登录过程需要多长时间?错误的范围可能为: - 未将Web部件正确部署到第二台服务器 - >最有可能的 - 没有标记为安全的控件 - 服务器超时 - 备用访问映射直接指向单个服务器而不是loadbalancer –

回答

1

我不知道为什么最后的结果是一个文件未发现异常,但考虑到发生在GetMembershipProvider错误的,我的猜测是,会员供应商还没有被多数民众赞成给予在一台服务器上配置错误。

成员资格提供程序条目必须存在于每个SharePoint服务器上的Web应用程序的web.config中。配置会员供应商的说明如下:

http://donalconlon.wordpress.com/2010/02/23/configuring-forms-base-authentication-for-sharepoint-2010-using-iis7/

+0

谢谢,我将无法在明天之前查看此内容,但我会再次检查该服务器上的web.config文件以确保没有错字或其他内容。 –

+0

我在两台服务器上比较了主网站的web.config(inetpub \ wwwroot \ wss \ VirtualDirectories \ 80 \ Web.config),它们是相同的。我还比较了SeucrityTokenServiceApplication web.config文件,它们也是一样的。 –

+0

当您在问题服务器上打开FBA用户管理页面(站点设置)时会发生什么? –

相关问题