繁体   English   中英

通过[proj] .deploy.cmd发布时,Web Deploy返回401未授权

[英]Web Deploy returns 401 unauthorized when publishing via [proj].deploy.cmd

我在Web部署方面遇到了一些问题,我似乎无法解决这个问题。 每次我尝试通过包中的[proj] .deploy.cmd命令发布到WMSvc时我得到“远程服务器返回错误:(401)未经授权”。 该命令如下所示(项目称为“Web”,服务器名为“AutoDeploy”):

Web.deploy.cmd /Y /M:https://AutoDeploy:8172/MsDeploy.axd -allowUntrusted

我可以通过Visual Studio正常发布到https:// AutoDeploy:8172 / MsDeploy.axd ,因此该服务肯定正在运行,我可以成功地以管理员身份对其进行身份验证。 在以管理员身份登录时,在计算机上本地运行此命令(它只是一个小的本地Win 2k8 VPC)不起作用,并且使用管理员帐户添加/ U和/ P参数不起作用。

我已经启用了失败的请求跟踪并得到了这个输出,所以至少有一些东西要引用,但不幸的是我无法确定根本原因是什么。 我正在尝试使用与Visual Studio中相同的凭据连接到同一服务,但显然有些不同。

出于兴趣,我可以按照以下方式发布到Web部署代理服务(MsDepSvc):

Web.deploy.cmd /Y /M:http://AutoDeploy/MsDeployAgentService /U:AutoDeploy\Administrator /P:...

但我真的想让WMSvc运行! 有什么想法吗?

Sayed上面的评论让我指出了正确的方向。 在构建输出详细程度“详细”并在.csproj中设置UseMsdeployExe为真( 来自Sayed博客的另一个提示 )之后,我发现Visual Studio生成的命令将身份验证类型设置为基本,回顾性地显示文本用户名和密码。

关于如何:安装部署包的MSDN帖子使用deploy.cmd文件解释了您可以在命令中添加“a”标志来设置它。 简而言之,这就是它现在的样子(实际上是有效的):

Web.deploy.cmd /Y /M:http://AutoDeploy/MsDeployAgentService /U:AutoDeploy\Administrator /P:...  /A:Basic

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM