Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 32993|Répondre: 0

[Source] Publiez votre projet sur un serveur IIS distant en utilisant VS 2019

[Copié le lien]
Publié sur 09/10/2020 12:09:22 | | | |
Autrefois, lors de la publication de projets, les fichiers étaient copiés-collés dans le répertoire du site, ou téléchargés dans le répertoire via FTP, mais aujourd’hui, avec l’émergence de l’intégration continue, de l’automatisation de l’exploitation et de la maintenance, et de l’édition automatisée, les projets de publication évoluent également chaque jour.

Cet article décrit comment publier à distance sur un site IIS distant via VS 2019.

Système de serveur distant : Windows Server 2019 64 bits

Configuration du serveur

1. Ajouter IIS, installer le framework .NET (omis)

2. Télécharger et installer Déploiement Web

Le déploiement Web peut être utilisé pour déployer des projets web localement et à distance à l’adresse suivante :La connexion hyperlientérée est visible.



Au moment de l’installation, sélectionnez« Complet »Après l’installation, vous verrez le service « Web Management Service » dans le service, comme montré dans la figure ci-dessous :



S’il n’est pas installé, VS obtiendra l’erreur suivante lors de la publication à distance :

---------------------------
Microsoft Visual Studio
---------------------------
Échec de se connecter à l’ordinateur distant (« xx »). Assurez-vous que Web Deploy est installé sur la machine distante et que le processus requis (« Web Management Service ») est lancé.  Pour en savoir plus, consultez :https://go.microsoft.com/fwlink/ ... ATION_NOT_REACHABLE。 Impossible de se connecter aux serveurs distants
---------------------------
Es-tu sûr   
---------------------------


3. Installer des « scripts et outils de gestion IIS »

Allez dans Sélectionner Rôles de serveur > Serveur Web (IIS) > Outils administratifs, puis sélectionnez le rôle Scripts et Outils Administratifs IIS, cliquez sur Suivant, et installez le rôle.



4. IIS permet des connexions à distance

Localisez le service de gestion dans IIS et activez les connexions distantes, comme montré sur l’image suivante :





(Note :Ouvrez le port entrant 8172 dans le pare-feu et le groupe de sécurité

5. Créer un nouveau site IIS

Créez un nouveau site nommé test1, comme montré dans la figure suivante :



6. IIS ajoute des utilisateurs administratifs

Ajoutez un utilisateur IIS Manager, comme montré sur l’image suivante :



En même temps, sur le site test1, ajoutez l’autorisation, comme montré dans la figure ci-dessous :



Si vous n’ajoutez pas d’autorisation, l’erreur suivante sera signalée lorsque vous publiez à distance :

---------------------------
Microsoft Visual Studio
---------------------------
Vous vous êtes connecté à un ordinateur distant (« xxx ») via le service de gestion web, mais vous n’avez pas autorisé cette notification. Assurez-vous d’utiliser le bon nom d’utilisateur et mot de passe, que le site auquel vous êtes connecté existe déjà, et que l’utilisateur dont les identifiants sont représentés a accès au site.  Pour en savoir plus, consultez :https://go.microsoft.com/fwlink/ ... R_USER_UNAUTHORIZED。 Le serveur distant renvoie une erreur : (401) Non autorisé.
---------------------------
Es-tu sûr   
---------------------------
Sortie ASP.NET projet MVC

Tout d’abord, créer un nouveau projet MVC .NET 4.6.2 asp.net sous le nom WebAutomatedDeployment utilisant VS 2019,

Créez deux nouvelles bibliothèques, et le programme web fait référence à ces deux bibliothèques en même temps. (Créer et référencer 2 bibliothèques car la simulation est plus proche du projet officiel)


Essayez de commencer le projet comme montré ci-dessous :



Faites un clic droit sur le projet, sélectionnez Publier, Serveur Web (IIS)-> Déploiement Web, et remplissez les informations du serveur, comme montré dans la figure suivante :



Vérifiez la connexion et le test réussit, comme montré sur l’image suivante :



Lorsque j’ai essayé de publier, l’erreur était la suivante :

La tâche de déploiement web a échoué. ((9/10/2020 11:34:38) Demande de traitement d’erreur sur ordinateur distant. )

(9/10/2020 11:34:38) Demande de traitement d’erreur sur ordinateur distant.
Le serveur a du mal à traiter la demande. Contactez votre administrateur serveur pour plus de détails.        WebAutomatedDeployment 0
Vous pouvez voir des erreurs spécifiques via l’Observateur d’événements serveur, comme montré sur la figure suivante :



User: itsvse
IP client : xxx
Content-Type: application/msdeploy
Version: 9.0.0.0
MSDeploy.VersionMin: 7.1.600.0
MSDeploy.VersionMax: 9.0.3802.0
MSDeploy.Method: Sync
MSDeploy.RequestId: def8d9f7-1a72-4b19-8b75-919f8c6a9604
MSDeploy.RequestCulture: zh-CN
MSDeploy.RequestUICulture: zh-CN
ServerVersion: 9.0.1973.0
Skip: objectName="^configProtectedData$"
Provider: auto, Path:
Une exception d’agent de déploiement de trace propagée au client s’est produite. ID de demande « def8d9f7-1a72-4b19-8b75-919f8c6a9604 », horodatage de demande : « 2020/10/9 11:51:29 ». Détails de l’erreur :
System.UnauthorizedAccessException: 尝试执行未经授权的操作。
   Dans System.Security.AccessControl.Win32.SetSecurityInfo(type de type de type, nom de chaîne, handle SafeHandle, SecurityInfos securityInformation, propriétaire de SecurityIdentifier, groupe SecurityIdentifier, GenericAcl sacl, GenericAcl dacl)
   at System.Security.AccessControl.NativeObjectSecurity.Persist(Nom de la chaîne, handle SafeHandle, AccessControlSections inclusSections, Object exceptionContext)
   Dans System.Security.AccessControl.NativeObjectSecurity.Persist(Nom de la chaîne, AccessControlSections incluentSections, Object exceptionContext)
   at Microsoft.Web.Deployment.FileSystemSecurityEx.Persist(chemin de chaînes, fichier isFile booléen)
   at Microsoft.Web.Deployment.SetAclProvider.Add(SourceDeploymentObject, Boolean whatIf)
   sur Microsoft.Web.Deployment.DeploymentObject.Update(source DeploymentObject, DeploymentSyncContext syncContext)
   sur Microsoft.Web.Deployment.DeploymentSyncContext.HandleUpdate(DeploymentObject destObject, DeploymentObjectSourceObject)
   sur Microsoft.Web.Deployment.DeploymentSyncContext.SyncOrder(DeploymentObject dest, source DeploymentObject)
   sur Microsoft.Web.Deployment.DeploymentSyncContext.ProcessSync(DestinationObjectDeploymentObject, DeploymentObjectSourceObject)
   Dans Microsoft.Web.Deployment.DeploymentObject.SyncToInternal(DeploymentObject destObject, DeploymentSyncOptions syncOptions, PayloadTable payloadTable, ContentRootTable contentRootTable, Nullable'1 syncPassId, String syncSessionId)
   at Microsoft.Web.Deployment.DeploymentAgent.HandleSync(DeploymentAgentAsyncData asyncData, Nullable'1 passId, String user, String siteName)
   at Microsoft.Web.Deployment.DeploymentAgent.HandleRequestWorker(DeploymentAgentAsyncData asyncData)
   at Microsoft.Web.Deployment.DeploymentAgent.HandleRequest(DeploymentAgentAsyncData asyncData)
Solution:

Redémarrez VS Tools, cliquez sur Publier, et l’image suivante apparaîtra :



Vérifie "Conservez ce certificat pour les prochaines sessions en Visual Studia» peut être résolu.

La première fois qu’il a été publié, c’était lent car tous les fichiers devaient être téléchargés sur le serveur, comme le montre la figure ci-dessous :



Essayez de modifier le fichier de page Index.cshtml et cliquez sur Republier, seuls les 3 fichiers suivants seront mis à jour, comme montré dans la figure ci-dessous :



Actualisez le site web et constatez qu’il a été mis à jour, comme indiqué ci-dessous :



(Fin)




Précédent:Construire un proxy VPN ocserv sur CentOS 7
Prochain:Aspose.Cellules Trois Mousquetaires
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com