Delen via


Publicatie-instellingen ophalen uit IIS en importeren in Visual Studio

U kunt het hulpprogramma Publish gebruiken om publicatie-instellingen te importeren en vervolgens uw app te implementeren. In dit artikel gebruiken we publicatie-instellingen voor IIS.

Deze stappen zijn van toepassing op ASP.NET en ASP.NET Core-webtoepassingen.

Notitie

Een publicatie-instellingenbestand (*.publishsettings) verschilt van een publicatieprofiel (*.pubxml). Er wordt een publicatie-instellingenbestand gemaakt in IIS en vervolgens kan het worden geïmporteerd in Visual Studio. Visual Studio maakt het publicatieprofiel.

Voorwaarden

  • Visual Studio geïnstalleerd met de ASP.NET- en webontwikkelingsworkload. Als u Visual Studio al hebt geïnstalleerd:

    • Installeer de meest recente updates in Visual Studio door Help>Controleren op updateste selecteren.
    • Voeg de workload toe door Tools>Hulpprogramma's en onderdelente selecteren.
  • Op uw server moet Windows Server 2012 of hoger worden uitgevoerd en moet de IIS-webserverfunctie juist zijn geïnstalleerd (vereist voor het genereren van het publicatie-instellingenbestand (.publishsettings). Zowel ASP.NET 4.5 als ASP.NET Core moet ook op de server worden geïnstalleerd. De stappen in deze zelfstudie zijn getest in Windows Server 2022.

    Notitie

    IIS in Windows biedt geen ondersteuning voor het genereren van de publicatie-instellingen. U kunt echter nog steeds publiceren naar IIS met behulp van het hulpprogramma Publiceren in Visual Studio.

Web deploy installeren en configureren op Windows Server

Web Deploy biedt aanvullende configuratiefuncties waarmee het publicatie-instellingenbestand vanuit de gebruikersinterface kan worden gemaakt.

Notitie

Het webplatforminstallatieprogramma heeft het einde van de levensduur bereikt op 1-7-22. Zie voor meer informatie Web Platform Installatieprogramma - Einde van de ondersteuning en stopzetting van de product-/toepassingsfeed. U kunt Web Deploy 4.0 rechtstreeks installeren om het publicatie-instellingenbestand te maken.

  1. Als u IIS-beheerscripts en hulpprogramma'snog niet hebt geïnstalleerd, installeert u deze nu.

    Ga naar Serverfuncties selecteren>Webserver (IIS)>Management Toolsen selecteer vervolgens de iis-beheerscripts en hulpprogramma's rol, klik op Volgendeen installeer vervolgens de rol.

    IIS-beheerscripts en -hulpprogramma's installeren

    De scripts en hulpprogramma's zijn vereist om het genereren van het publicatie-instellingenbestand in te schakelen.

    Zorg ervoor dat u ook de Management Service en IIS Management Console installeert (deze zijn mogelijk al geïnstalleerd).

  2. Download Web Deploy 4.0op Windows Server .

  3. Voer het installatieprogramma Web Deploy uit en zorg ervoor dat u volledige installatie selecteert in plaats van een typische installatie.

    Met een volledige installatie krijgt u de onderdelen die u nodig hebt om een publicatie-instellingenbestand te genereren. (Als u in plaats daarvan Aangepaste kiest, ziet u de lijst met onderdelen, zoals wordt weergegeven in de volgende afbeelding.)

    Schermopname van web deploy 4.0-onderdelen

  4. (Optioneel) Controleer of Web Deploy correct wordt uitgevoerd door Configuratiescherm te openen > Systeem en beveiliging > Systeem- en beveiligingshulpprogramma's > Servicesen controleer vervolgens of:

    • webimplementatieagentservice wordt uitgevoerd (de servicenaam verschilt in oudere versies).

    • Webbeheerservice wordt uitgevoerd.

    Als een van de agentservices niet wordt uitgevoerd, start u de webimplementatieagentservice opnieuw.

    Als de Web Implementatie Agent Service helemaal niet aanwezig is, ga naar Configuratiescherm > Programma's > Een programma verwijderen, en zoek Microsoft Web Deploy <versie>. Kies ervoor om de installatie te wijzigen en zorg ervoor dat u kiest voor installatie op de lokale harde schijf voor de Web Deploy-componenten. Voer de stappen voor de installatie van de wijziging uit.

Het bestand met publicatie-instellingen maken in IIS op Windows Server

  1. Sluit de IIS-beheerconsole en open deze opnieuw om bijgewerkte configuratieopties weer te geven in de gebruikersinterface.

  2. Klik in IIS met de rechtermuisknop op de Standaardwebsite, kies Web Deploy>Web Deploy-publicatie configureren.

    Web Deploy-configuratie configureren

    Als u het menu Implementeren niet ziet, raadpleegt u de vorige sectie om te controleren of Web Deploy wordt uitgevoerd.

  3. Bekijk de instellingen in het dialoogvenster Configureer Web Deploy Publishing.

  4. Klik op Setup-.

    In het deelvenster Resultaten ziet u in de uitvoer dat toegangsrechten worden verleend aan de opgegeven gebruiker en dat een bestand met een .publishsettings bestandsextensie is gegenereerd op de locatie die wordt weergegeven in het dialoogvenster.

    <?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>
    

    Afhankelijk van uw Windows Server- en IIS-configuratie ziet u verschillende waarden in het XML-bestand. Hier volgen enkele details over de waarden die u ziet:

    • Het bestand msdeploy.axd waarnaar wordt verwezen in het kenmerk publishUrl is een dynamisch gegenereerd HTTP-handlerbestand voor Web Deploy. (Voor testdoeleinden werkt http://myhostname:8172 over het algemeen ook.)

    • De publishUrl-poort is ingesteld op poort 8172. Dit is de standaardpoort voor Web Deploy.

    • De destinationAppUrl-poort is ingesteld op poort 80. Dit is de standaardpoort voor IIS.

    • Als u in latere stappen geen verbinding kunt maken met de externe host vanuit Visual Studio met behulp van de hostnaam, test u het IP-adres van de server in plaats van de hostnaam.

      Notitie

      Als u publiceert naar IIS die wordt uitgevoerd op een Virtuele Azure-machine, moet u een binnenkomende poort openen voor Web Deploy en IIS in de netwerkbeveiligingsgroep. Zie Poorten openen voor een virtuele machinevoor gedetailleerde informatie.

  5. Kopieer dit bestand naar de computer waarop u Visual Studio uitvoert.

De publicatie-instellingen importeren in Visual Studio en implementeren

  1. Op de computer waarop u het ASP.NET project hebt geopend in Visual Studio, klikt u met de rechtermuisknop op het project in Solution Explorer en kiest u voor Publiceren.

    Als u eerder publicatieprofielen hebt geconfigureerd, wordt het deelvenster Publiceren weergegeven. Klik op Nieuwe of Nieuwe profiel maken.

  2. Selecteer de optie om een profiel te importeren.

    Klik in het dialoogvenster Publiceren op Profiel importeren.

    Kies Publiceren

  3. Navigeer naar de locatie van het publicatie-instellingenbestand dat u in de vorige sectie hebt gemaakt.

  4. Navigeer in het dialoogvenster Publicatie-instellingenbestand importeren naar het profiel dat u in de vorige sectie hebt gemaakt en klik op openen .

    Klik op voltooien om het publicatieprofiel op te slaan en klik vervolgens op Publiceren.

    Visual Studio begint het implementatieproces en het uitvoervenster toont de voortgang en resultaten.

    Als er implementatiefouten optreden, klikt u op Meer acties>Bewerken om instellingen te bewerken. Wijzig de instellingen en klik op Valideer om nieuwe instellingen te testen. Als de hostnaam niet wordt gevonden, probeert u het IP-adres in plaats van de hostnaam in de velden Server en Doel-URL.

    Instellingen bewerken in het hulpprogramma Publiceren

Nadat de app is geïmplementeerd, wordt deze automatisch gestart.

Veelvoorkomende problemen

Controleer eerst het uitvoervenster in Visual Studio op statusinformatie en controleer uw foutberichten. Bovendien:

  • Als u geen verbinding kunt maken met de host met behulp van de hostnaam, probeert u in plaats daarvan het IP-adres.
  • Zorg ervoor dat de vereiste poorten zijn geopend op de externe server.
  • Voor ASP.NET Core moet u in IIS ervoor zorgen dat het veld Groep van toepassingen voor de DefaultAppPool- is ingesteld op Geen beheerde code.
  • Controleer of de versie van ASP.NET die in uw app wordt gebruikt, gelijk is aan de versie die u op de server hebt geïnstalleerd. Voor uw app kunt u de versie bekijken en instellen op de pagina Eigenschappen. Als u de app wilt instellen op een andere versie, moet die versie zijn geïnstalleerd.
  • Als de app probeert te openen, maar u een certificaatwaarschuwing ziet, kiest u ervoor om de site te vertrouwen. Als u de waarschuwing al hebt gesloten, kunt u het *.pubxml-bestand in uw project bewerken en het volgende element toevoegen: <AllowUntrustedCertificate>true</AllowUntrustedCertificate>. Deze instelling is alleen bedoeld voor testen.
  • Als de app niet vanuit Visual Studio start, start u de app in IIS om te testen of deze correct is geïmplementeerd.