Déployer une application directement depuis visual studio 2010
-
Upload
novencia-groupe -
Category
Documents
-
view
5.754 -
download
0
Transcript of Déployer une application directement depuis visual studio 2010
Déployer une application directement depuis Visual Studio 2010 Auteur Alain BELUT
Visual Studio 2010 permet de déployer directement une application sur différents serveurs IIS.
Nous allons voir la mise en place pour « Le déploiement en un clic ».
1) Configurer le/les serveurs IIS 7.x cibles.
a) Téléchargement et installation.
Sur le serveur cible vous devrez installer Web Deploy de Microsoft. Vous pouvez le télécharger ici : http://www.iis.net/download/webdeploy
Cette installation ajoute de nouvelles fonctionnalités à IIS et met en place un service accessible à distance.
08/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - [email protected] 2
b) Le service Windows MsDeploy
Il est accessible depuis votre serveur via https://localhost:8172/MsDeploy.axd.
Notez bien que par défaut le protocole est https et que cela ne marchera pas via http.
Le port par défaut est 8172.
Le service Windows est bien évidemment visible dans la liste des services accessible via services.msc :
Il est important de relever qui exécute le service. Par défaut Service réseau.
Si vous voulez pouvoir accéder à distance au service, vous devrez sans doute modifier le paramétrage du pare-feu du serveur pour ouvrir le port 8172 en lecture/écriture.
08/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - [email protected] 3
c) Configuration des sites dans IIS
Il convient maintenant de définir quels sites pourront être publiés directement depuis Visual Studio. La première chose à faire est de créer un utilisateur. Pour cela rendez-vous dans la console d'administration d'IIS (inetmgr.exe). Sélectionnez le nom du serveur dans l'arborescence, puis sur l'écran principal, section gestion cliquer sur Utilisateurs du Gestionnaire des services Internet.
Vous visualisez la liste des utilisateurs techniques déclarés qui peuvent procéder à la publication de sites. A priori la liste sera vide. Cliquez sur Ajouter un utilisateur.
08/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - [email protected] 4
Renseignez le nom d'utilisateur et le mot de passe pour le nouvel utilisateur technique que vous voulez créer. Le compte créé vous devez encore lui accorder des privilèges pour lui permettre de publier le site. Cliquez de nouveau sur le nom du serveur puis cliquer dans la section Gestion sur Délégation du service de gestion.
08/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - [email protected] 5
Cliquez ensuite sur Ajouter une règle puis sélectionnez Déployez des applications avec du contenu
Dans la définition de la nouvelle règle, vous devez sélectionner dans la liste déroulante de Fournisseurs : contentPath, createPath, iisApp et setAcl
08/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - [email protected] 6
Laissez les autres informations renseignées par défaut puis cliquez sur OK . Une nouvelle fenêtre apparaît et vous demande quel utilisateur autoriser pour cette règle. Indiquez l'utilisateur créé précédemment.
Cliquez enfin sur OK.
A ce stade nous avons donc défini un compte avec les habilitations nécessaires pour publier des sites Web.
Il faut maintenant définir quels sites cet utilisateur peut publier. Par défaut aucun !
Pour cela il faut se positionner sur le site que l'on veut associer au compte créé.
Puis dans la zone principal, dans la section Gestion cliquer sur Autorisations du Gestionnaire des services Internet
08/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - [email protected] 7
Le nouvel écran affiche la liste des utilisateurs autorisés à publier ce site. A priori, aucun utilisateur n'est autorisé. Cliquer sur Autoriser un utilisateur pour associer le compte précédemment créé.
08/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - [email protected] 8
Vous pourriez autoriser un utilisateur du domaine Windows. Mais dans notre cas, nous allons autoriser le compte technique que nous avons créé précédemment. Pour cela nous devons sélectionner Gestionnaire des services Internet puis cliquer sur le bouton Sélectionner.
Choisir le compte créé précédemment et cliquer sur OK.
A ce stade, nous venons d'autoriser l'utilisateur à publier ce site Web.
ATTENTION : il faut impérativement ajouter les droits d'accès MAXIMUM (Contrôle total) au compte qui exécute le service MsDeploy sur le répertoire du site Web
(par exemple : c:\inetpub\wwwroot\MonSite.).
Nous l'avons vu précédemment, le service est exécuté dans notre cas par Service Réseau.
Sans quoi vous aurez des erreurs d'accès lors de la publication depuis Visual Studio 2010.
2) Configuration de Visual Studio 2010
a) La publication
Pour publier votre application Web, depuis Visual Studio 2010, après avoir ouvert votre solution, placez vous sur le projet Web à publier, faites un clic droit puis cliquer sur Publier.
08/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - [email protected] 9
08/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - [email protected] 10
La première fois d'une publication, une fenêtre apparaît et doit être complétée.
08/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - [email protected] 11
La méthode de publication est Web Deploy.L'url du service correspond à l'url avec HTTPS vers votre serveur que nous avons configuré précédemment.
Vous devez avoir configuré le pare-feu côté serveur. Le Site/application doit être renseigné avec le nom du site tel qu'il apparaît dans la console de gestion de IIS sous Sites. C'est très important… C'est ce nom qui doit être indiqué.
(Par exemple : Default Web Site ou monsite.com ou autre… TEL que cela apparaît dans IIS).
Cliquer sur le bouton Publier pour lancer la Publication vers le serveur.
b) Publier le bon fichier de configuration Web.config
Visual Studio 2010 permet de gérer X versions du fichier Web.config et par défaut nous avons Web.config.debug, Web.config.releaseEn fonction de l'environnement cible, ce sera le fichier Web.config.debug ou le fichier Web.config.release qui sera pris.
(On pourrait aussi créer un environnement staging et avoir un fichier Web.config.staging).
08/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - [email protected] 12
Pour gérer le plus simplement du monde différents fichier de configurations sans maîtriser la transformation des fichiers, une astuce simple est de préparer un fichier de Configuration complet pour l'environnement cible (par exemple Release) et mettre au début du fichier (donc Web.config.release) :
Pour plus d'informations sur la configuration de votre application ASP.NET, consultez
http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration xmlns:xdt=http://schemas.microsoft.com/XML-Document-Transform xdt:Transform="Replace">
Au moment de la compilation en mode Release, l'intégralité de la configuration est remplacée par le contenu de Web.config.release pour générer le Web.config définitif.
ATTENTION : Visual Studio, quoi qu'il arrive procède à une gestion particulière des ConnectionStrings qui pourront poser problème au moment de la génération des fichiers Web. Config.
Pour éviter cela et garantir que vos chaines de connexion définies ne soient pas altérées, modifier le fichier csproj et ajouter ceci dans les <PropertyGroup /> <AutoParameterizationWebConfigConnectionStrings>false</AutoParameterizationWebConfigConnectionStrings>
08/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - [email protected] 13