Thanks for the note. I recreated the Portals\2 folder (and the Portal Alias folder, which was also missing) but no luck. I'm going through the database now, but can't identify what else I might need to change.
* The Portals and PortalAlias tables both contain Portal ID 2.
* The Tabs table seems to contain a full complement of Tabs for Portal ID 2 (Admin, File Manager, User Accounts, etc.)
* The TabModules table contains NO TabID's that relate to Portal ID 2 in the Tabs table. This must be a problem, no?
Error when trying to edit Portal 2 from Host | Portals page:
Method: DotNetNuke.Entities.Portals.PortalSettings.GetSiteSettings
StackTrace:
Message: System.Exception: Unhandled Error: ---> DotNetNuke.Services.Exceptions.PageLoadException: Error: Site Settings is currently unavailable. ---> DotNetNuke.Services.Exceptions.ModuleLoadException: Error: Site Settings is currently unavailable. ---> System.NullReferenceException: Object reference not set to an instance of an object. at DotNetNuke.Entities.Portals.PortalSettings.GetSiteSettings(Int32 PortalId) at DotNetNuke.Modules.Admin.PortalManagement.SiteSettings.Page_Load(Object sender, EventArgs e) --- End of inner exception stack trace --- at DotNetNuke.Services.Exceptions.Exceptions.ProcessModuleLoadException(String FriendlyMessage, PortalModuleBase ctrlModule, Exception exc, Boolean DisplayErrorMessage) at DotNetNuke.Services.Exceptions.Exceptions.ProcessModuleLoadException(PortalModuleBase ctrlModule, Exception exc, Boolean DisplayErrorMessage) at DotNetNuke.Services.Exceptions.Exceptions.ProcessModuleLoadException(PortalModuleBase ctrlModule, Exception exc) at DotNetNuke.Modules.Admin.PortalManagement.SiteSettings.Page_Load(Object sender, EventArgs e) at System.Web.UI.Control.OnLoad(EventArgs e) at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) --- End of inner exception stack trace --- at DotNetNuke.Services.Exceptions.Exceptions.ProcessPageLoadException(Exception exc, String URL) at DotNetNuke.Framework.PageBase.Page_Error(Object Source, EventArgs e) at System.Web.UI.TemplateControl.OnError(EventArgs e) at System.Web.UI.Page.HandleError(Exception e) at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) at System.Web.UI.Page.ProcessRequest() at System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) at System.Web.UI.Page.ProcessRequest(HttpContext context) at ASP.default_aspx.ProcessRequest(HttpContext context) at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) --- End of inner exception stack trace ---
Error when trying to browse to Portal 2 home page (which is in the Tabs table as TabID 217):
Method: DotNetNuke.Entities.Portals.PortalSettings.GetSiteSettings
StackTrace:
Message: System.Exception: Unhandled Error: ---> System.NullReferenceException: Object reference not set to an instance of an object. at DotNetNuke.Entities.Portals.PortalSettings.GetSiteSettings(Int32 PortalId) at DotNetNuke.Entities.Portals.PortalSettings.GetSiteSetting(Int32 PortalId, String SettingName) at DotNetNuke.HttpModules.UrlRewriteModule.OnBeginRequest(Object s, EventArgs e) at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) --- End of inner exception stack trace ---