Visual studio 如果用户为非管理员,而同一用户可用于同一Web服务器上的VS2015 Web发布,则Visual Studio 2017 Web发布将失败
我试图使用Visual Studio 2017的非管理员帐户将ASP.NET核心Web项目发布到IIS远程服务器,但在部署时出现以下错误: 正在从源启动Web部署任务: 声明:\Projects\Own\AspNetCore\corewithangulartry\CoreWithAngularTrialApi\obj\Debug\netcoreapp1.1\PubTmp\CoreWithAngularTrialApi.SourceManifest.xml 目的地:自动。C:\Program Files x86\Microsoft Visual Studio\2017\Community\MSBuild\Sdks\Microsoft.NET.Sdk.Publish\build\netstandard1.0\PublishTargets\Microsoft.NET.Sdk.Publish.MSDeploy.targets134,5: 错误:Web部署任务失败。已连接到远程计算机 ... 使用Web管理服务,但可能 不授权。确保您使用的用户名和密码正确 密码,您连接的站点存在,并且 凭据表示具有访问站点权限的用户。 了解更多信息,请访问: . 确保站点名称、用户名和密码正确。如果 问题未解决,请联系您的本地或服务器 管理员错误详细信息:已连接到远程计算机 ... 使用Web管理服务,但可能 不授权。确保您使用的用户名和密码正确 密码,您连接的站点存在,并且 凭据表示具有访问站点权限的用户。 了解更多信息,请访问: . 远程服务器返回错误:401未经授权。出版 未能部署 我有以下部署配置:Visual studio 如果用户为非管理员,而同一用户可用于同一Web服务器上的VS2015 Web发布,则Visual Studio 2017 Web发布将失败,visual-studio,visual-studio-2017,web-publishing,Visual Studio,Visual Studio 2017,Web Publishing,我试图使用Visual Studio 2017的非管理员帐户将ASP.NET核心Web项目发布到IIS远程服务器,但在部署时出现以下错误: 正在从源启动Web部署任务: 声明:\Projects\Own\AspNetCore\corewithangulartry\CoreWithAngularTrialApi\obj\Debug\netcoreapp1.1\PubTmp\CoreWithAngularTrialApi.SourceManifest.xml 目的地:自动。C:\Program Fi
Publish method = Web deploy
Server = servername:8172/msdeploy.axd
Site name = Default Web Site/CoreWithAngularTestApi
User name = username
Password = ******
当在同一网站默认网站下发布不同的应用程序ASP.NET MVC 5时,完全相同的配置可以工作,因此远程服务器上的发布配置似乎是正确的
将用户名设置为本地管理员将取消阻止Visual Studio 2017中的发布过程
此外,发布配置文件*.pubxml实际上是相同的
远程服务器上的事件查看器捕获以下错误:
IISWMSVC\u授权\u服务器\u不允许
仅允许Windows管理员使用服务器进行连接
联系其他用户应使用“连接到站点或”
应用程序的任务,以便能够连接
进程:WMSvc User=username
问题:如何从Visual Studio 2017启用非管理web发布?我设法找出了非管理用户发布失败的原因。服务器设置正确,但Visual Studio publishing似乎将ASP.NET核心Web应用程序部署与ASP.NET MVC 5部署区别对待 我必须在发布配置文件xml文件中明确指定网站名称。因此,不是:
<MSDeployServiceURL>servername:8172/msdeploy.axd</MSDeployServiceURL>
我把
<MSDeployServiceURL>servername:8172/msdeploy.axd?Site=Default Web Site</MSDeployServiceURL>
注意:在VS2017内发布MVC 5项目时不会出现此问题。此问题已修复: ASP.NET核心项目使用一组不同的发布目标,因此其行为与MVC5不同。此项目可在GitHub上获得-