2009-03-14 9 views

Répondre

9

Voici un site qui montre différentes techniques pour accomplir cette tâche. Il existe de nombreuses techniques qui peuvent être utilisés en tant que stratégie de déploiement pour votre application web .:

Beansoftware How to Deploy ASP.NET Web Application

+2

Les informations contenues dans cet article est un peu daté aujourd'hui. Consultez http://weblogs.asp.net/scottgu/archive/2010/07/29/vs-2010-web-deployment.aspx pour les options VS2010. –

8

Alt + B + H combinaison (ouvre la publication fenêtre pour le site Web ASP.NET/application) est le moyen le plus simple de déployer une application à l'emplacement requis.

Publication utilisée pour la compilation et le déploiement de l'application sur le serveur.

6

Eh bien, cela dépend de ce que vous essayez d'accomplir du point de vue disponibilité/disponibilité. Les options publish/xcopy/installer sont intéressantes, mais toutes négligent de résoudre le problème que cela prend du temps pour ces options. À partir du moment où le premier fichier est copié dans le répertoire au moment où le dernier fichier est copié dans le site est dans un état incohérent. Les fichiers ASPX peuvent faire référence à des objets de couche de données qui ne sont pas encore dans le répertoire bin, ou le répertoire bin peut avoir une DLL avec un jeu de paramètres modifié sur une fonction, mais l'aspx n'a pas été installé encore, de sorte que le aspx est toujours à la recherche de l'ancienne fonction. En bref, parce que le déploiement n'est pas un processus atomique, vous pouvez/aurez des problèmes.

Nous avons résolu ce problème en installant les nouveaux fichiers dans un nouveau répertoire, puis en accédant à IIS et en modifiant le site Web pour qu'il pointe vers le nouveau répertoire. Cela fait du changement un processus atomique et rend les choses beaucoup plus fluides. Est-ce parfait? Nan. Vous pouvez avoir des problèmes viewstate ou des problèmes de session (la session est conservée, mais peut-être que le nouveau code recherche quelque chose dans la session que l'ancien code n'a pas défini) mais cela rend le processus beaucoup plus fluide.

Bien sûr, aucune de ces solutions ne traite de l'autre partie non-atomique de mise à jour du site web ... la base de données. Encore une fois, le processus de modification du schéma de base de données prend du temps. Mettez-vous d'abord à jour le code ou la base de données? Le DB peut-il changer de travail sans changement de code (une nouvelle colonne qui prend en charge null ou a une valeur par défaut) ou le changement de code peut-il fonctionner sans changement de DB (suppression d'une colonne)? C'est une analyse au cas par cas, et aucune de ces solutions ne permet d'y remédier.

Bien sûr, si vous pouvez expulser vos utilisateurs du site pendant un certain temps, alors la vie est plus facile, mais si vous êtes essayer d'atteindre 100% de disponibilité, ce n'est pas si simple.

0

Parfois, il n'est pas pratique de configurer la publication Web sur la cible souhaitée. Si c'est le cas, vous pouvez toujours publier sur votre ordinateur local (comme indiqué ci-dessous), puis déployer XCOPY sur votre cible.

  1. Dans IIS Sites clic droit et cliquez sur Ajouter site
  2. Mettre en place un nouveau site Web comme indiqué puis cliquez sur OK enter image description here
  3. Dans Visual Studio (en cours d'exécution avec des privilèges d'administrateur), cliquez-droit sur votre ASP Projet Web .NET, sélectionnez Publier ...
  4. Cliquez sur l'en-tête du profil et dans la liste déroulante, sélectionnez Nouveau profil personnalisé ...
  5. Entrez un nom de profil comme « localhost44321 », mis en place le profil comme indiqué puis cliquez sur Publier enter image description here