Web部署代理可以在IIS6上的80之外的端口上运行吗? [英] Can the web deploy agent run on a port other than 80 on IIS6?
问题描述
我在Windows 2003计算机上遇到了一个挑战,我需要在不是80的端口上运行Web部署代理。默认情况下,MsDepSvc将在http:// [server ] / MsDeployAgentService,它明显地在端口80上监听。
我遇到的问题是,机器也在运行Visual SVN服务器,使用端口80, Web部署代理服务拒绝启动。 (至少这是我能得出的唯一的逻辑结论。)我有一个小的SVN管理应用程序在同一台机器上,我想通过Web部署发布,因此这个难题。
是否可以在另一个端口上运行代理?显然,如果这是IIS7我们将在8172和一切都会很好,但不幸的是,这不是这里的情况。任何建议?
有几种方法可以做到这一点:
选项1:卸载并重新安装指定其他端口:
msiexec / I WebDeploy_x86_en -US.msi / passive ADDLOCAL = ALL LISTENURL = http:// +:8172 / MsDeployAgentService
命令行安装MsDeployAgentService并配置它在端口8172上侦听,就像在IIS7上。
选项2:重新配置现有服务侦听端口8172:
-
停止msdepsvc(
net stop msdepsvc
) -
编辑以下注册表值:
HKLM \\ \\ SYSTEM\CurrentControlSet\Services\MsDepSvc\Parameters\ListenUrl
例如:
http:// +:80 / MsDeployAgentService
更改为:
http:// +:8172 / MsDeployAgentService
-
查询HTTP侦听器:
httpcfg query urlacl
在结果中:
URL:http:// +:80 / MsDeployAgentService /
ACL:D: ;; GX ;; NS)
-
修改侦听器:
httpcfg delete urlacl / u http:// +:80 / MsDeployAgentService /
这应该回应:
HttpDeleteServiceConfiguration完成0。
httpcfg set urlacl / u http:// +:8172 / MsDeployAgentService / / a D:(A ;; GX ;;; NS)
pre>
这应该响应:
HttpSetServiceConfiguration完成0。
$ b b/ a
中指定的ACL应该与httpcfg query urlacl
命令 -
重新启动msdepsvc(
bnet start msdepsvc
)。 -
您可以通过执行以下操作来确认服务正在端口8172上侦听:
netstat -an
您应该会看到以下内容:
TCP 0.0.0.0:8172 0.0.0.0:0 LISTENING
警告:
我会先在非生产机器上尝试这样做,你期望。
I've got a bit of a challenge with a Windows 2003 machine where I need to run the web deploy agent on a port which isn't 80. By default, MsDepSvc will expose an endpoint at http://[server]/MsDeployAgentService which obviously implicitly listens on port 80.
The problem I have is that the machine is also running Visual SVN Server which is using port 80 and as a result, the web deployment agent service refuses to start. (At least this is the only logical conclusion I can draw.) I have a small SVN management app on the same machine which I'd like to publish over web deploy hence the conundrum.
Is it possible to run the agent on another port? Obviously if this was IIS7 we'd be on 8172 and everything would be fine but unfortunately that's not the case here. Any suggestions?
There's a couple of ways to do this:
Option 1: Uninstall and re-install Specifying a different port:
msiexec /I WebDeploy_x86_en-US.msi /passive ADDLOCAL=ALL LISTENURL=http://+:8172/MsDeployAgentService
The command line installs the MsDeployAgentService and configures it to listen on port 8172 just like on IIS7.
Option 2: Re-configure Existing Service to listen on port 8172:
Stop the msdepsvc (
net stop msdepsvc
)Edit the following registry value:
HKLM\SYSTEM\CurrentControlSet\Services\MsDepSvc\Parameters\ListenUrl
It'll look something like:
http://+:80/MsDeployAgentService
Change to:
http://+:8172/MsDeployAgentService
Query HTTP listeners:
httpcfg query urlacl
Your should see the following entry listed in the results:
URL : http://+:80/MsDeployAgentService/ ACL : D:(A;;GX;;;NS)
Modify listener:
httpcfg delete urlacl /u http://+:80/MsDeployAgentService/
This should respond with:
HttpDeleteServiceConfiguration completed with 0.
httpcfg set urlacl /u http://+:8172/MsDeployAgentService/ /a D:(A;;GX;;;NS)
This should respond with:
HttpSetServiceConfiguration completed with 0.
The ACL specified in the
/a
switch should match the ACL reported by thehttpcfg query urlacl
commandRestart the msdepsvc (
net start msdepsvc
).You can confirm that the service is listening on port 8172 by doing:
netstat -an
You should see the following:
TCP 0.0.0.0:8172 0.0.0.0:0 LISTENING
Warning:
I would try this on a non-production machine first to ensure this works as you expect.
这篇关于Web部署代理可以在IIS6上的80之外的端口上运行吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!