20 April 2013 IIS, WebDeploy Robert Muehsig

Wer WebDeploy auf einem Server Betriebssystem nutzt, der geht im Standardfall über den Port 8172. Aber wofür ist der Port eigentlich da und wie kann ich den ändern?

Hinweis: Für die WebDeploy Installieren empfehle ich diesen und diesen Blogpost. 

Port 8172 = IIS Management Service Default Port

Der Port 8172 ist der Standard-Port des IIS Management Services, welchen es auch nur für Server Betriebssysteme gibt (also keine Sorge wenn ihr ihn im IIS unter Windows 7/8 nicht findet).

image

Über die GUI (und sicher auch über die Powershell) kann man diese Einstellungen ändern wenn der Dienst gerade nicht läuft.

Das war es eigentlich schon.

Hintergrund-Info: WebDeploy & Web Management Service Handler

Weiter oben habe ich schon geschrieben das der Web Management Service nur auf Server Betriebssystemen zum Einsatz kommt – wie funktioniert dann aber WebDeploy auf meinem lokalen IIS?

Auf dem Blog von Richard Szalay habe ich eine tolle Zusammenfassung über WebDeploys “Deployment Modelle” gefunden:

    1. Web Management Service (WMSvc) handler
      This is the preferred method for IIS 7+ / Windows Server 2008+ and supports non-administrator deployments. It piggybacks on the WMSvc (ie. remote IIS management) by registering a custom handler (
      http://server:8172/msdeploy.axd). Making use of WMSvc also means that this method is not available to Windows client versions (including 7 and 8), as WMSvc is not available on those platforms. At the command line, this method is specified on the dest provider as “,computerName=http://server:8172/msdeploy.axd?site=iis-site-name”
    2. Web Deploy Agent Service
      This is the only choice for IIS6 / Server 2003, is not installed by default, and requires the deployment user to be an administrator. At the comment line, this method is specified as “,computerName=server“
    3. “On Demand” Agent Service (temp agent)
      This choice installs the agent service temporarily for a single deployment. Useful when you have administrator credentials but aren’t able to remotely install the handler or agent service. At the command line, this method is specified as“,computerName=server,tempAgent=true”
    4. </ol></ol>

       

      WebDeploy auf dem Server selbst funktioniert immer im Zusammenspiel mit dem Web Management Service – ändert man den Port des WMSvc Handlers, ändert man den Port für WebDeploy.

      Hintergrund-Info: Wo werden diese Einstellungen eigentlich gespeichert?

      Ein paar dieser Settings (wie z.B. den Port) habe ich in der Registry wiedergefunden:

      Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WebManagement\Server

      image

      Andere Settings stehen in der administration.config (unter C:\Windows\System32\inetsrv\config)

      image

      TL;DR:

      Auf einem Server im IIS Manager auf Management Service gehen und da den Port ändern. WebDeploy nutzt den Management Service für das Deployment – wobei der Management Service auch zur “Remote-Verwaltung” dient.


Written by Robert Muehsig

Software Developer - from Dresden, Germany, now living & working in Switzerland. Microsoft MVP & Web Geek.
Other Projects: KnowYourStack.com | ExpensiveMeeting | EinKofferVollerReisen.de

If you like the content and want to support me you could buy me a beer or a coffee via Litecoin or Bitcoin - thanks for reading!