Obtenir les paramètres de publication d’IIS et les importer dans Visual Studio
Vous pouvez utiliser l’outil Publier pour importer des paramètres de publication, puis déployer votre application. Dans cet article, nous utilisons des paramètres de publication pour IIS.
Ces étapes s’appliquent aux applications web ASP.NET et ASP.NET Core.
Notes
Un fichier de paramètres de publication (*.publishsettings) est différent de celui d’un profil de publication (*.pubxml). Un fichier de paramètres de publication est créé dans IIS et peut être importé dans Visual Studio. Visual Studio crée le profil de publication.
Prérequis
Visual Studio installé avec la charge de travail ASP.NET et de développement web. Si vous avez déjà installé Visual Studio :
- Installez les dernières mises à jour dans Visual Studio en sélectionnant Aide>Rechercher les mises à jour.
- Ajoutez la charge de travail en sélectionnant Outils>Obtenir des outils et des fonctionnalités.
Sur votre serveur, vous devez exécuter Windows Server 2012 ou version ultérieure, et vous devez avoir le rôle serveur web IIS correctement installé (nécessaire pour générer le fichier de paramètres de publication (*.publishsettings)). ASP.NET 4.5 ou ASP.NET Core doit également être installé sur le serveur. Les étapes de ce tutoriel ont été testées dans Windows Server 2022.
Pour configurer ASP.NET Core, consultez Héberger ASP.NET Core sur Windows avec IIS. Pour ASP.NET Core, veillez à configurer le pool d’applications pour utiliser Aucun code managé, comme décrit dans l’article.
Pour configurer ASP.NET 4.5, consultez IIS 8.0 avec ASP.NET 3.5 et ASP.NET 4.5.
Notes
IIS sur Windows ne prend pas en charge la génération des paramètres de publication. Toutefois, vous pouvez toujours publier sur IIS en utilisant l’outil Publier dans Visual Studio.
Installer et configurer Web Deploy sur Windows Server
Web Deploy fournit des fonctionnalités de configuration supplémentaires qui permettent de créer le fichier de paramètres de publication à partir de l’interface utilisateur.
Notes
Web Platform Installer est arrivé en fin de vie le 01/07/22. Pour plus d’informations, consultez Web Platform Installer - Fin du support et retrait du flux produit/application. Vous pouvez installer directement Web Deploy 4.0 pour créer le fichier de paramètres de publication.
Si vous n’avez pas encore installé les Scripts et outils de gestion IIS, faites-le maintenant.
Accédez à Sélectionner des rôles de serveurs>Serveur web (IIS)>Outils de gestion, sélectionnez le rôle Scripts et outils de gestion IIS, cliquez sur Suivant, puis installez le rôle.
Les scripts et les outils sont nécessaires pour permettre la génération du fichier de paramètres de publication.
Veillez également à installer le Service de gestion et la Console de gestion IIS (ils peuvent déjà être installés).
Sur Windows Server, téléchargez Web Deploy 4.0.
Exécutez le programme d’installation Web Deploy et veillez à sélectionner une installation Complète au lieu d’une installation classique.
Une fois l’installation terminée, vous obtenez les composants dont vous avez besoin pour générer un fichier de paramètres de publication. (Si vous choisissez Personnalisé à la place, vous pouvez voir la liste des composants, comme montré dans l’illustration suivante.)
(Facultatif) Vérifiez que Web Deploy s’exécute correctement en ouvrant Panneau de configuration > Système et sécurité > Outils d’administration > Services, puis en vérifiant que :
Le Service agent de déploiement web est en cours d’exécution (le nom du service est différent dans les versions antérieures).
Le Service de gestion web est en cours d’exécution.
Si l’un des services d’agent n’est pas en cours d’exécution, redémarrez le service agent de déploiement web.
Si le service agent de déploiement web n’est pas présent, accédez à Panneau de configuration > Programmes > Désinstaller un programme, recherchez Microsoft Web Deploy <version>. Choisissez Changer l’installation et veillez à choisir Sera installé sur le disque dur local pour les composants Web Deploy. Effectuez les étapes relatives au changement de l’installation.
Créer le fichier de paramètres de publication dans IIS sur Windows Server
Fermez et rouvrez la console de gestion IIS pour afficher les options de configuration mises à jour dans l’IU.
Dans IIS, cliquez avec le bouton droit sur le site web par défaut, choisissez Déployer>Activer la publication Web Deploy.
Si vous ne voyez pas le menu Déployer, consultez la section précédente pour vérifier que Web Deploy est en cours d’exécution.
Dans la boîte de dialogue Activer la publication Web Deploy, examinez les paramètres.
Cliquez sur Setup.
Dans le panneau Résultats, la sortie indique que les droits d’accès sont accordés à l’utilisateur spécifié et qu’un fichier ayant l’extension .publishsettings a été généré à l’emplacement indiqué dans la boîte de dialogue.
<?xml version="1.0" encoding="utf-8"?> <publishData> <publishProfile publishUrl="https://myhostname:8172/msdeploy.axd" msdeploySite="Default Web Site" destinationAppUrl="http://myhostname:80/" profileName="Default Settings" publishMethod="MSDeploy" userName="myhostname\myusername" /> </publishData>
En fonction de votre configuration Windows Server et IIS, vous voyez des valeurs distinctes dans le fichier XML. Voici quelques détails sur les valeurs que vous voyez :
Le fichier msdeploy.axd référencé dans l’attribut
publishUrl
est un fichier de gestionnaire HTTP généré dynamiquement pour Web Deploy. (À des fins de test,http://myhostname:8172
fonctionne également, en règle générale.)Le port
publishUrl
a la valeur 8172, ce qui correspond au port par défaut de Web Deploy.Le port
destinationAppUrl
a la valeur 80, ce qui correspond au port par défaut d’IIS.Dans les étapes suivantes, si vous ne parvenez pas à vous connecter à l’hôte distant dans Visual Studio en utilisant le nom d’hôte, testez l’adresse IP du serveur à la place du nom d’hôte.
Notes
Si vous publiez sur IIS s’exécutant sur une machine virtuelle Azure, vous devez ouvrir un port entrant pour Web Deploy et IIS dans le groupe de sécurité réseau. Pour plus d’informations, consultez Ouvrir des ports sur une machine virtuelle.
Copiez ce fichier sur l’ordinateur où vous exécutez Visual Studio.
Importer les paramètres de publication dans Visual Studio et déployer
Sur l’ordinateur sur lequel le projet ASP.NET est ouvert dans Visual Studio, cliquez avec le bouton droit sur le projet dans l’Explorateur de solutions, puis choisissez Publier.
Si vous avez déjà configuré des profils de publication, le volet Publier s’affiche. Cliquez sur Nouveau ou Créer un nouveau profil.
Sélectionnez l’option permettant d’importer un profil.
Dans la boîte de dialogue Publier, cliquez sur Importer un profil.
Accédez à l’emplacement du fichier de paramètres de publication que vous avez créé dans la section précédente.
Dans la boîte de dialogue Importer le fichier de paramètres de publication, accédez au profil que vous avez créé dans la section précédente et sélectionnez-le, puis cliquez sur Ouvrir.
Cliquez sur Terminer pour enregistrer le profil de publication, puis sur Publier.
Visual Studio commence le processus de déploiement, tandis que la fenêtre Sortie affiche la progression et les résultats.
Si vous obtenez des erreurs de déploiement, cliquez sur Plus d’actions>Modifier pour modifier les paramètres. Modifiez les paramètres, puis cliquez sur Valider pour tester les nouveaux paramètres. Si le nom d’hôte est introuvable, cherchez l’adresse IP au lieu du nom d’hôte dans les champs Serveur et URL de destination.
Une fois l’application déployée, elle doit démarrer automatiquement.
Problèmes courants
Tout d’abord, consultez les informations d’état dans la fenêtre Sortie dans Visual Studio, puis consultez vos messages d’erreur. De plus :
- Si vous ne pouvez pas vous connecter à l’hôte avec le nom d’hôte, essayez plutôt l’adresse IP.
- Vérifiez que les ports obligatoires sont ouverts sur le serveur distant.
- Pour ASP.NET Core, dans IIS, vous devez vérifier que le champ Pool d’applications pour DefaultAppPool est défini sur Aucun code managé.
- Vérifiez que la version d’ASP.NET utilisée dans votre application est la même que la version que vous avez installée sur le serveur. Pour votre application, vous pouvez voir et définir la version dans la page Propriétés. Pour définir l’application sur une autre version, cette version doit être installée.
- Si l’application a tenté de s’ouvrir, mais que vous voyez un avertissement de certificat, choisissez de faire confiance au site. Si vous avez déjà fermé l’avertissement, vous pouvez modifier le fichier *.pubxml dans votre projet et ajouter l’élément suivant :
<AllowUntrustedCertificate>true</AllowUntrustedCertificate>
. Ce paramètre est seulement pour les tests ! - Si l’application ne démarre pas à partir de Visual Studio, démarrez l’application dans IIS pour vérifier qu’elle a été correctement déployée.