Umbraco affichera cette page s'il est incapable de se connecter à la base de données.
Dans les anciennes versions d'Umbraco, une fois que cela se produisait, le site restait dans cet état jusqu'à ce qu'il soit republié - cela semble avoir été corrigé (je ne suis pas sûr de quelle version). Si vous souffrez de ce problème et que la mise à jour n'est pas une option, alors une solution de contournement est de placer le code suivant en haut de /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>
(Ce code n'était pas le mien à l'origine - je ne me souviens plus où je l'ai obtenu). Le code tente de republier le site de sorte que, dès que la connexion à la base de données est à nouveau disponible, le site réapparaît.
Vous pouvez également modifier le contenu de /config/splashes/noNodes.aspx pour afficher à vos utilisateurs un message de maintenance du site ou d'erreur plus approprié.
Savez-vous si une maintenance de la base de données était prévue au moment où le site de votre client a souffert de ce problème ? Si ce n'est pas le cas, vous devriez peut-être jeter un coup d'oeil à son hébergement.