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?
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:
Stop msdepsvc (
net stop msdepsvc
)-
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
-
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)
-
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 przezhttpcfg query urlacl
polecenie Uruchom ponownie msdepsvc (
net start msdepsvc
).-
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.
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)
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:
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
Gdy właściwość zostanie znaleziona, przejdź do tabeli rejestru i znajdź miejsce jej wstawiania.
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