Czy agent wdrażania sieci Web może działać na porcie innym niż 80 W IIS6?

Mam małe wyzwanie z komputerem z Windows 2003, gdzie muszę uruchomić web deploy agent na porcie, który nie jest 80. Domyślnie MsDepSvc wyświetli punkt końcowy na http: / /[server] / MsDeployAgentService, który oczywiście domyślnie nasłuchuje na porcie 80.

Mój problem polega na tym, że na maszynie działa również Visual SVN Server, który korzysta z Portu 80 i w rezultacie Usługa Web deployment agent odmawia uruchomienia. (Przynajmniej jest to jedyny logiczny wniosek, jaki mogę remis.) Mam małą aplikację do zarządzania SVN na tej samej maszynie, którą chciałbym opublikować przez Web deploy stąd zagadka.

Czy można uruchomić agenta na innym porcie? Oczywiście gdyby to był IIS7 bylibyśmy na 8172 i wszystko byłoby dobrze, ale niestety tak nie jest. Jakieś sugestie?

Author: skaffman, 2011-05-03

4 answers

Jest na to kilka sposobów:

Opcja 1: Odinstaluj i zainstaluj ponownie, określając inny port:

msiexec /I WebDeploy_x86_en-US.msi /passive ADDLOCAL=ALL LISTENURL=http://+:8172/MsDeployAgentService

Linia poleceń instaluje MsDeployAgentService i konfiguruje go do nasłuchu na porcie 8172, tak jak na IIS7.

Opcja 2: ponownie skonfiguruj istniejącą usługę do nasłuchiwania na porcie 8172:

  1. Stop msdepsvc (net stop msdepsvc)

  2. Edytuj następującą wartość rejestru:

    HKLM\SYSTEM\CurrentControlSet\Services\MsDepSvc\Parameters\ListenUrl
    

    Będzie wyglądać coś w stylu:

    http://+:80/MsDeployAgentService
    

    Zmień na:

    http://+:8172/MsDeployAgentService
    
  3. Zapytanie http:

    httpcfg query urlacl
    

    Twój powinien zobaczyć następujący wpis wymieniony w wynikach:

    URL : http://+:80/MsDeployAgentService/
    ACL : D:(A;;GX;;;NS)
    
  4. Modyfikuj słuchacza:

    httpcfg delete urlacl /u http://+:80/MsDeployAgentService/
    

    To powinno odpowiedzieć: HttpDeleteServiceConfiguration completed with 0.

    httpcfg set urlacl /u http://+:8172/MsDeployAgentService/ /a D:(A;;GX;;;NS)
    

    To powinno odpowiedzieć: HttpSetServiceConfiguration completed with 0.

    ACL określony w przełączniku /a powinien pasować do ACL zgłoszonego przez httpcfg query urlacl polecenie

  5. Uruchom ponownie msdepsvc (net start msdepsvc).

  6. Możesz potwierdzić, że usługa nasłuchuje na porcie 8172, wykonując następujące czynności:]}
    netstat -an
    

    Powinieneś zobaczyć co następuje:

    TCP    0.0.0.0:8172           0.0.0.0:0              LISTENING
    

Warning:

Najpierw wypróbowałbym to na maszynie nieprodukcyjnej, aby upewnić się, że działa to zgodnie z oczekiwaniami.

 61
Author: Kev,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-05-16 10:19:23

To są zmiany, które musiałem zrobić Dla Windows 7, zgodnie z receptą Kev:

Krok 3: netsh http show urlacl

Krok 4: netsh http delete urlacl url=http://+:80/MSDEPLOYAGENTSERVICE/

netsh http add urlacl url=http://+:8172/MSDEPLOYAGENTSERVICE/ sddl=D:(A;;GX;;;NS)

 25
Author: Paul Spaulding,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-10-06 01:33:43

Jeśli to coś warte, przykleiłem solidną radę Keva do skryptu wsadowego, aby zrobić zakupy w jednym miejscu przy zmianie numerów portów.

:: Name:     MsDepSvc.Port.cmd
:: Purpose:  Modifies the TCP/IP port that the Web Deployment Agent Service
::           (MsDepSvc) listens on.  Tested on Win7 Enterprise 32-bit.
:: Author:   [email protected]
:: Revision: January 2013

@ECHO OFF
SETLOCAL ENABLEEXTENSIONS
SETLOCAL ENABLEDELAYEDEXPANSION

:: variables
SET me=%~n0
SET url=
SET port=
IF NOT "%~1"=="" (
  SET /A port=%~1
)

ECHO %me%: Web Deployment Agent Service (MsDepSvc) port change script

:: default argument values
IF "%port%"=="" (
  SET /A port=8172
  ECHO %me%: INFO - using default port value of 8172
)

SC.EXE query msdepsvc >NUL 2>NUL
IF NOT "%ERRORLEVEL%"=="0" (
  ECHO %me%: ERROR - MsDepSvc not installed
  ECHO %me%: exiting
  EXIT /B 1
)

ECHO %me%: stopping MsDepSvc
NET STOP msdepsvc >NUL 2>NUL

:: check if the default port is set
REG.EXE QUERY HKLM\SYSTEM\CurrentControlSet\Services\MsDepSvc\Parameters /v ListenUrl >NUL
IF NOT "%ERRORLEVEL%"=="0" (
  ECHO %me%: ERROR - MsDepSvc ListenUrl registry key not found
  REG.EXE QUERY HKLM\SYSTEM\CurrentControlSet\Services\MsDepSvc\Parameters
  ECHO %me%: exiting
  EXIT /B 2
)

FOR /F "tokens=3" %%I IN ('REG.EXE QUERY HKLM\SYSTEM\CurrentControlSet\Services\MsDepSvc\Parameters /v ListenUrl ^| FINDSTR ListenUrl') DO (
  SET url=%%I
)
ECHO %me%: INFO - MsDepSvc current reservation is "%url%"

NETSH.EXE http show urlacl "%url%" >NUL
IF NOT "%ERRORLEVEL%"=="0" (
  ECHO %me%: ERROR - reservation for "%url%" not found
  EXIT /B 4
)

:: save the existing urlacl properties for User, Listen, Delegate, and SDDL
FOR /F "tokens=1,* delims=: " %%A IN ('NETSH.exe http show urlacl %url%  ^| FINDSTR "User Listen Delegate SDDL"') DO (
  SET URLACL.%%A=%%B
)

IF NOT DEFINED URLACL.User     ECHO %me%: Failed to read the exising URLACL setting for User     &&GOTO :ERROR
IF NOT DEFINED URLACL.Listen   ECHO %me%: Failed to read the exising URLACL setting for Listen   &&GOTO :ERROR
IF NOT DEFINED URLACL.Delegate ECHO %me%: Failed to read the exising URLACL setting for Delegate &&GOTO :ERROR
IF NOT DEFINED URLACL.SDDL     ECHO %me%: Failed to read the exising URLACL setting for SDDL     &&GOTO :ERROR

ECHO %me%: updating MsDepSvc to listen on port %port%
REG.EXE ADD HKLM\SYSTEM\CurrentControlSet\Services\MsDepSvc\Parameters /v ListenUrl /t REG_SZ /f /d "http://+:%port%/MSDEPLOYAGENTSERVICE/"

ECHO %me%: deleting the existing reservation for MsDepSvc
NETSH.EXE http delete urlacl "%url%" || GOTO :ERROR

ECHO %me%: adding the port %port% reservation for MsDepSvc
NETSH.EXE http add urlacl url=http://+:%port%/MsDeployAgentService/ user="%URLACL.User%" listen="%URLACL.Listen%" delegate="%URLACL.Delegate%" SDDL="%URLACL.SDDL%"  || GOTO :ERROR

ECHO %me%: starting MsDepSvc
NET START msdepsvc >NUL 2>NUL

ECHO %me%: process info for MsDepSvc
QUERY.EXE PROCESS MSDEPSVC.EXE
ECHO.
ECHO %me%: port bindings for MsDepSvc
NETSTAT.EXE -a -n -o | FINDSTR /R "TCP.*:%port%.*LISTENING Proto"
ECHO.
ECHO %me%: finished

:END
ENDLOCAL
ECHO ON
@EXIT /B 0

:ERROR
ECHO %me%: ERROR - exiting with errorlevel %ERRORLEVEL%
ECHO ON
@EXIT/B %ERRORLEVEL%

Czytaj Więcej:

 7
Author: Steve Jansen,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-02-28 22:33:20

Warto też poznać magię kryjącą się za tym, jaką właściwość przechowujemy w jakim kluczu rejestru-wpisujemy Orca.exe - nieocenione i proste w użyciu narzędzie do odczytu / modyfikacji bazy danych MSI (staraj się jednak nie modyfikować).

Najpierw musimy znaleźć właściwość w tabeli właściwości Tutaj wpisz opis obrazka

Gdy właściwość zostanie znaleziona, przejdź do tabeli rejestru i znajdź miejsce jej wstawiania. Tutaj wpisz opis obrazka

 0
Author: ostati,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-11-08 15:59:17