2016-11-24 4 views
0

Nuget을 통해 또는 수동으로 파일을 병합 한 후에 문제가 발생합니다. 결국 웹 사이트를 처음 시작할 때 로컬로 http://localhost:81을 사용하여 (이 문제는 업그레이드 전에는 잘 작동합니다.) 계속해서 아래 오류 메시지가 나타납니다. 리디렉션되고Umbraco 7.1.9에서 7.5.4로 업그레이드 할 때

URL은 다음과되는 같이

http://localhost:81/install?redir=true&url=http%3a%2f%2flocalhost%3a81%2f

내가 같은 메시지가 백엔드에 액세스하려고합니다. Umbraco 소스의 사본을 다운로드했고 디버깅 할 때 Umbraco.Web의 WebSecurity.cs 파일에서 IsAuthenticated() 메소드가 _httpContext.User에 대해 null을 표시하고 있음을 확인할 수 있습니다.

어떤 아이디어가 문제 일 수 있을까요 ??

[NullReferenceException: Object reference not set to an instance of an object.] 
    Umbraco.Web.Security.WebSecurity.IsAuthenticated() +19 
    Umbraco.Web.Security.WebSecurity.ValidateCurrentUser(Boolean throwExceptions) +17 
    Umbraco.Web.Install.Controllers.InstallController.Index() +142 
    lambda_method(Closure , ControllerBase , Object[]) +35 
    System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters) +14 
    System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters) +157 
    System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters) +27 
    System.Web.Mvc.Async.AsyncControllerActionInvoker.<BeginInvokeSynchronousActionMethod>b__39(IAsyncResult asyncResult, ActionInvocation innerInvokeState) +22 
    System.Web.Mvc.Async.WrappedAsyncResult`2.CallEndDelegate(IAsyncResult asyncResult) +29 
    System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49 
    System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult) +32 
    System.Web.Mvc.Async.AsyncInvocationWithFilters.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3d() +50 
    System.Web.Mvc.Async.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f() +225 
    System.Web.Mvc.Async.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f() +225 
    System.Web.Mvc.Async.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f() +225 
    System.Web.Mvc.Async.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f() +225 
    System.Web.Mvc.Async.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f() +225 
    System.Web.Mvc.Async.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f() +225 
    System.Web.Mvc.Async.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f() +225 
    System.Web.Mvc.Async.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f() +225 
    System.Web.Mvc.Async.<>c__DisplayClass33.<BeginInvokeActionMethodWithFilters>b__32(IAsyncResult asyncResult) +10 
    System.Web.Mvc.Async.WrappedAsyncResult`1.CallEndDelegate(IAsyncResult asyncResult) +10 
    System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49 
    System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters(IAsyncResult asyncResult) +34 
    System.Web.Mvc.Async.<>c__DisplayClass2b.<BeginInvokeAction>b__1c() +26 
    System.Web.Mvc.Async.<>c__DisplayClass21.<BeginInvokeAction>b__1e(IAsyncResult asyncResult) +100 
    System.Web.Mvc.Async.WrappedAsyncResult`1.CallEndDelegate(IAsyncResult asyncResult) +10 
    System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49 
    System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) +27 
    System.Web.Mvc.Controller.<BeginExecuteCore>b__1d(IAsyncResult asyncResult, ExecuteCoreState innerState) +13 
    System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +29 
    System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49 
    System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) +36 
    System.Web.Mvc.Controller.<BeginExecute>b__15(IAsyncResult asyncResult, Controller controller) +12 
    System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +22 
    System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49 
    System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) +26 
    System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute(IAsyncResult asyncResult) +10 
    System.Web.Mvc.MvcHandler.<BeginProcessRequest>b__5(IAsyncResult asyncResult, ProcessRequestState innerState) +21 
    System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +29 
    System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49 
    System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) +28 
    System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result) +9 
    System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +9644097 
    System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +155 
+0

안녕, 나는 같은 오류가 있습니다. 시도한 7.7.7, 7.6.11 및 7.6.7 및 모든이 오류를 보여줍니다. 메신저 구조지도를 사용하지만 해결 된 @rybl 해결되지 않습니다 나를 위해 작동하지 않습니다. 내 글로벌 asax에서 이미 기본 UmbracoApplication을 사용하고있었습니다. 당신은 아마도 이것을위한 다른 해결책을 찾았 을까요? Thtnx – Pierre

답변

0

web.config 파일의 멤버 자격 공급자 섹션이 제대로 병합되었는지 확인합니다. 나는 그 버전들 사이에 약간의 사용자 변화가 있었고 약간의 비트가 약간 바뀌 었다고 생각한다. 업그레이드 후 UmbracoContext 쿠키에 문제가있는 경우도 있으므로 쿠키를 삭제해야합니다.

+0

정보 주셔서 감사합니다. 나는 이전 버전과 새로운 7.5.4 버전과 비교되어야하는대로 회원 공급자 섹션을 두 번 확인했습니다. 또한 쿠키를 삭제했으며 Chrome의 시크릿 모드를 사용하고 있지만 여전히 문제는 남아 있습니다. –

0

동일한 문제가 발생하여 내 경험을 공유하고 싶습니다.

종속성 주입을 수행하기 위해 사용자 정의 UmbracoApplication 구현을 사용하고 있다는 것이 문제였습니다.

저는 설치 프로세스가 응용 프로그램이 일반적으로 사용하지 않는 종속성을 사용해야한다고 생각합니다.

문제를 해결하기 위해 Global.asax을 기본값 UmbracoApplication 클래스로 변경했습니다. 그런 다음 데이터베이스가 업데이트 된 후 다시 사용자 정의 클래스로 전환했습니다.

이 문제를 해결하는 더 좋은 방법이있을 것이라고 확신하지만 누군가가 동일한 문제에 부딪혀 올바른 경로를 찾거나 빠른 수정을 원하는 경우에 대비하여 문서화하고 싶습니다.

내 코드는 다음과 같습니다 : 모든 상위 버전으로 umbraco 7.6.6에서 업그레이드 할 때

<%-- Live App --%> 
<%@ Application Inherits="Foo.WebsiteUmbracoApplication" Language="C#" %> 
<%-- For Umbraco DB Updates --%> 
<%--<%@ Application Inherits="Umbraco.Web.UmbracoApplication" Language="C#" %>--%> 
using System; 
using System.Web.Http; 
using System.Web.Mvc; 
using Umbraco.Web; 

namespace Foo 
{ 
    public class WebsiteUmbracoApplication : UmbracoApplication 
    { 
     protected override void OnApplicationStarted(object sender, EventArgs e) 
     { 
      base.OnApplicationStarted(sender, e); 

      ConfigureDependencyInjection(); 
      ConfigureFormatters(); 
     } 

     private static void ConfigureDependencyInjection() 
     { 
      var container = UnityConfig.ConfiguredContainer; 
      // MVC 
      DependencyResolver.SetResolver(new Microsoft.Practices.Unity.Mvc.UnityDependencyResolver(container)); 
      // Web API 
      GlobalConfiguration.Configuration.DependencyResolver = new Unity.WebApi.UnityDependencyResolver(container); 
     } 

     private static void ConfigureFormatters() 
     { 
      var formatters = GlobalConfiguration.Configuration.Formatters; 
      formatters.Remove(formatters.XmlFormatter); 
     } 
    } 
}