Umbraco will show this page if it cannot connect to the database.
In earlier versions of Umbraco, when this happened, the site will remain in that state until it is republished - this seems to be fixed (I'm not sure which version). If you suffer from this, and updating is not an option, then a workaround is to place the following code at the top of /config/splashes/noNodes.aspx:
<script runat="server"> protected void Page_Load(object sender, EventArgs e) { Server.ScriptTimeout = 100000; var cacheFile = IOHelper.MapPath("/App_Data/umbraco.config"); try { var r = XmlReader.Create(cacheFile, new XmlReaderSettings() { DtdProcessing = DtdProcessing.Ignore }); var d = new XmlDocument(); d.Load(r); var n = d.SelectSingleNode("//root"); r.Close(); if (n.ChildNodes.Count == 0) { Response.Write("Republishing Site......"); Response.Flush(); } else { Response.Write("Site Was Already Published......"); return; } } catch (Exception ex) { Response.Write(ex.Message); Response.Write("Cache missing, republishing....."); Response.Flush(); } Document.RePublishAll(); library.RefreshContent(); Response.Write("Completed"); Response.Flush(); Response.Redirect("/"); Response.End(); } </script>
(This code was not originally mine - I can’t remember where I got it from). The code tries to republish the site so that immediately after connecting to the database the site appears again.
You can also edit the contents of /config/splashes/noNodes.aspx to show your users site maintenance or an error message that is more appropriate.
Are you aware of any scheduled maintenance of the database at the time your customers were hit? If not, you may need to take a look at their hosting.
source share