La méthode la plus simple de replace un site en direct par des pages statiques pendant la maintenance?

D'accord, les gens,

Je cherche juste un aperçu des methods utilisées par d'autres pour le scénario suivant …

J'ai un projet en direct (.net 3.5), qui s'exécute à partir du dossier par défaut d'IIS7 (mappé à la «racine» du dossier wwwroot publié). Bien que nous effectuions une maintenance ou des mises à niveau (via un installateur Windows VS), je replace généralement l'application par des pages statiques pour expliquer que le système est en maintenance.

Nous déplaçons le site publié dans un sous-directory (ce qui n'est pas le cas), supprimez l'ancienne version, installez une nouvelle version, et lorsque nous sums heureux, remettez-la à la racine (en remplaçant les pages d'attente).

Il doit y avoir un moyen plus simple et less risqué de le faire.

Comment les autres abordent-ils cette situation (ou similaire)?

One Solution collect form web for “La méthode la plus simple de replace un site en direct par des pages statiques pendant la maintenance?”

Dans IIS, j'utilise une méthode appelée App_Offline. Vous findez plus d'informations sur le blog de Scott Gu .

La façon dont app_offline.htm fonctionne est que vous placez ce file dans la racine de l'application. Lorsque ASP.NET le voit, il arrête le domaine de l'application pour l'application (et ne le redémarre pas pour les requêtes) et renvoie le contenu du file app_offline.htm en réponse à toutes les nouvelles requests dynamics pour l'application. Lorsque vous avez terminé la mise à jour du site, il suffit de supprimer le file et il reviendra en ligne.

Une chose que j'ai souligné dans le discours que vous souhaitez surveiller est une caractéristique d'IE6 appelée «Show Friendly Http Errors». Cela peut être configuré dans l'onglet devises-> Options Internet-> Avancé dans IE, et est activé par défaut avec IE6. Lorsque cela est activé et qu'un server renvoie un code d'état non HTTP-200 avec less de 512 octets de contenu, IE ne montrera pas le code HTML renvoyé et substitue son propre message de code d'état générique (qui personnellement je ne pense pas être super amical).

Donc, si vous utilisez la fonction app_offline.htm, vous devez vous assurer que vous disposez d'au less 512 octets de contenu pour vous assurer que votre HTML (au lieu du message d'état amical d'IE) s'affiche à vos users. Si vous ne voulez pas avoir beaucoup de présentation de text sur la page, une astuce que vous pouvez utiliser est simplement d'append un commentaire sur le côté du client avec un peu de contenu pour en faire passer plus de 512 octets. Par exemple:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>Site Under Construction</title> </head> <body> <h1>Under Construction</h1> <h2>Gone to Florida for the sun...</h2> <!-- Adding additional hidden content so that IE Friendly Errors don't prevent this message from displaying (note: it will show a "friendly" 404 error if the content isn't of a certain size). <h2>Gone to Florida for the sun...</h2> <h2>Gone to Florida for the sun...</h2> <h2>Gone to Florida for the sun...</h2> <h2>Gone to Florida for the sun...</h2> <h2>Gone to Florida for the sun...</h2> <h2>Gone to Florida for the sun...</h2> <h2>Gone to Florida for the sun...</h2> <h2>Gone to Florida for the sun...</h2> <h2>Gone to Florida for the sun...</h2> <h2>Gone to Florida for the sun...</h2> <h2>Gone to Florida for the sun...</h2> <h2>Gone to Florida for the sun...</h2> <h2>Gone to Florida for the sun...</h2> --> </body> </html> 

Plus de discussion à ce sujet sur notre site de la sœur, StackOverflow .

  • Prenez une capture d'écran de l'écran du serveur tout en déconnecté de RDP
  • Windows Update ne fonctionne pas sur Windows Server 2008 R2
  • Comment surveiller le process de détection de processeur sur un server distant
  • Windows Server 2008 R2 en tant que server VPN
  • Exécutez 2 sites IIS séparés, avec des certificates SSL séparés sur le même server
  • Accorder les droits d'administrateur à un certain programme pour tous les users?
  • Comment créer un dossier sur le bureau chaque fois qu'un nouvel user est créé?
  • Plusieurs versions PHP sur Windows Server 2008 problème de command line
  • Win 2008 environnement de développement de server unique (architecture)
  • Comment configurer l'en-tête de réponse 503 (service indisponible) dans IIS 7 web.config?
  • Réglage pour limiter le time autorisé pour une requête IIS 7 à compléter?
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.