Server names cannot contain a space character. (Test succeeded, running wiki fails)
I can't find a way to report a bug in bitbucket, so...
Everything tested fine with the ldap string I put in during the install, but when the site ran after the install I get the error message "Server names cannot contain a space character".
My LDAP has a space in one of the OU's: "LDAP://svusc-ddl01.corp.company.com/OU=Company Objects,DC=corp,DC=company,DC=com"
It seems really strange it would test just fine then cause a problem when running.
The full stack trace is here:
[ArgumentException: Server names cannot contain a space character.] System.DirectoryServices.Protocols.LdapDirectoryIdentifier..ctor(String[] servers, Boolean fullyQualifiedDnsHostName, Boolean connectionless) +97836 System.DirectoryServices.Protocols.LdapConnection..ctor(String server) +80 System.DirectoryServices.AccountManagement.PrincipalContext.ReadServerConfig(String serverName, ServerProperties& properties) +341 System.DirectoryServices.AccountManagement.PrincipalContext.DoServerVerifyAndPropRetrieval() +80 System.DirectoryServices.AccountManagement.PrincipalContext..ctor(ContextType contextType, String name, String container, ContextOptions options, String userName, String password) +353 System.DirectoryServices.AccountManagement.PrincipalContext..ctor(ContextType contextType, String name, String userName, String password) +88 Roadkill.Core.Security.Windows.ActiveDirectoryProvider.GetMembers(String domainName, String username, String password, String groupName) in d:\projects\roadkill\src\Roadkill.Core\Security\Windows\ActiveDirectoryProvider.cs:19 Roadkill.Core.Security.Windows.ActiveDirectoryUserService.GetUsersInGroup(String groupName) in d:\projects\roadkill\src\Roadkill.Core\Security\Windows\ActiveDirectoryUserService.cs:267 Roadkill.Core.Security.Windows.ActiveDirectoryUserService.IsAdmin(String email) in d:\projects\roadkill\src\Roadkill.Core\Security\Windows\ActiveDirectoryUserService.cs:145
[SecurityException: An error occurred querying IsAdmin with Active Directory]
Roadkill.Core.Security.Windows.ActiveDirectoryUserService.IsAdmin(String email) in d:\projects\roadkill\src\Roadkill.Core\Security\Windows\ActiveDirectoryUserService.cs:152
Roadkill.Core.Security.UserContext.get_IsAdmin() in d:\projects\roadkill\src\Roadkill.Core\Security\UserContext.cs:88
Roadkill.Core.Text.MenuParser.GetMenu() in d:\projects\roadkill\src\Roadkill.Core\Text\MenuParser.cs:44
Roadkill.Core.Services.PageService.GetBootStrapNavMenu(IUserContext userContext) in d:\projects\roadkill\src\Roadkill.Core\Services\PageService.cs:633
Roadkill.Core.Mvc.Controllers.HomeController.BootstrapNavMenu() in d:\projects\roadkill\src\Roadkill.Core\Mvc\Controllers\HomeController.cs:101
lambda_method(Closure , ControllerBase , Object[] ) +87
System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary2 parameters) +229 System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary2 parameters) +35
System.Web.Mvc.Async.AsyncControllerActionInvoker.<BeginInvokeSynchronousActionMethod>b__36(IAsyncResult asyncResult, ActionInvocation innerInvokeState) +39
System.Web.Mvc.Async.WrappedAsyncResult2.CallEndDelegate(IAsyncResult asyncResult) +77 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult) +42 System.Web.Mvc.Async.AsyncInvocationWithFilters.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3c() +72 System.Web.Mvc.Async.<>c__DisplayClass45.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3e() +387 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters(IAsyncResult asyncResult) +42 System.Web.Mvc.Async.<>c__DisplayClass28.<BeginInvokeAction>b__19() +38 System.Web.Mvc.Async.<>c__DisplayClass1e.<BeginInvokeAction>b__1b(IAsyncResult asyncResult) +188 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) +38 System.Web.Mvc.Controller.<BeginExecuteCore>b__1d(IAsyncResult asyncResult, ExecuteCoreState innerState) +29 System.Web.Mvc.Async.WrappedAsyncVoid1.CallEndDelegate(IAsyncResult asyncResult) +73
System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) +52
System.Web.Mvc.Async.WrappedAsyncVoid1.CallEndDelegate(IAsyncResult asyncResult) +39 System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) +38 System.Web.Mvc.MvcHandler.<BeginProcessRequest>b__4(IAsyncResult asyncResult, ProcessRequestState innerState) +43 System.Web.Mvc.Async.WrappedAsyncVoid1.CallEndDelegate(IAsyncResult asyncResult) +73
System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) +38
System.Web.Mvc.<>c__DisplayClass4.<Wrap>b__3() +18
System.Web.Mvc.ServerExecuteHttpHandlerWrapper.Wrap(Func`1 func) +29
System.Web.HttpServerUtility.ExecuteInternal(IHttpHandler handler, TextWriter writer, Boolean preserveForm, Boolean setPreviousPage, VirtualPath path, VirtualPath filePath, String physPath, Exception error, String queryStringOverride) +1345
[HttpException (0x80004005): Error executing child request for handler 'System.Web.Mvc.HttpHandlerUtil+ServerExecuteHttpHandlerAsyncWrapper'.]
System.Web.HttpServerUtility.ExecuteInternal(IHttpHandler handler, TextWriter writer, Boolean preserveForm, Boolean setPreviousPage, VirtualPath path, VirtualPath filePath, String physPath, Exception error, String queryStringOverride) +2320
System.Web.HttpServerUtility.Execute(IHttpHandler handler, TextWriter writer, Boolean preserveForm, Boolean setPreviousPage) +131
System.Web.HttpServerUtility.Execute(IHttpHandler handler, TextWriter writer, Boolean preserveForm) +33
System.Web.Mvc.Html.ChildActionExtensions.ActionHelper(HtmlHelper htmlHelper, String actionName, String controllerName, RouteValueDictionary routeValues, TextWriter textWriter) +593
System.Web.Mvc.Html.ChildActionExtensions.Action(HtmlHelper htmlHelper, String actionName, String controllerName, RouteValueDictionary routeValues) +113
ASP._Page_Themes_Responsive_Theme_cshtml.Execute() in c:\inetpub\wwwroot\Themes\Responsive\Theme.cshtml:22
System.Web.WebPages.WebPageBase.ExecutePageHierarchy() +252
System.Web.Mvc.WebViewPage.ExecutePageHierarchy() +147
System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage) +122
System.Web.WebPages.<>c__DisplayClass7.<RenderPageCore>b__6(TextWriter writer) +309
System.Web.WebPages.WebPageBase.Write(HelperResult result) +108
System.Web.WebPages.WebPageBase.RenderSurrounding(String partialViewName, Action1 body) +89 System.Web.WebPages.WebPageBase.PopContext() +356 System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context) +375 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +88
System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +775 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +775
System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList1 filters, ActionResult actionResult) +81 System.Web.Mvc.Async.<>c__DisplayClass1e.<BeginInvokeAction>b__1b(IAsyncResult asyncResult) +188 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) +38 System.Web.Mvc.Controller.<BeginExecuteCore>b__1d(IAsyncResult asyncResult, ExecuteCoreState innerState) +29 System.Web.Mvc.Async.WrappedAsyncVoid1.CallEndDelegate(IAsyncResult asyncResult) +73
System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) +52
System.Web.Mvc.Async.WrappedAsyncVoid1.CallEndDelegate(IAsyncResult asyncResult) +39 System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) +38 System.Web.Mvc.MvcHandler.<BeginProcessRequest>b__4(IAsyncResult asyncResult, ProcessRequestState innerState) +43 System.Web.Mvc.Async.WrappedAsyncVoid1.CallEndDelegate(IAsyncResult asyncResult) +73
System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) +38
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +602
System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) +195
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +128
I think this may be related to this issue:
https://forums.asp.net/t/1804933.aspx?UserPrincipal+FindByIdentity
Roadkill uses FindByIdentity iirc, so that is the reason why