2013-04-12 231 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用戶管理頁面(站點設置)時會發生什麼? –

相關問題