简体   繁体   English

Visual Studio 2013 Web部署程序包失败

[英]Visual Studio 2013 Web Deployment Package failed

MS deployment service was started. MS部署服务已启动。 I tried the web deployment package method and the .zip file was generated along with .deploy.cmd and the xml setting files. 我尝试了Web部署程序包方法,并且生成了.zip文件以及.deploy.cmd和xml设置文件。

As per the .deploy.cmd file, (planning to host the application on localhost) I tried the command 按照.deploy.cmd文件,(计划将应用程序托管在localhost上),我尝试了以下命令

C:\\Project>ProjectName.deploy.cmd /T /L /M: http://localhost/MSDeployAgentService C:\\ Project> ProjectName.deploy.cmd / T / L / M: http:// localhost / MSDeployAgentService

Dint get any errors for the above command. Dint收到上述命令的所有错误。 Got the prompt as "Creating application" and all the project files were copied. 出现提示为“正在创建应用程序”,并且所有项目文件均已复制。

When I changed the arguments from /T to /Y as said in ProjectName.deploy-readme.txt (generated as a part of ProjectName.deploy.cmd), I faced the below error. 当我按照ProjectName.deploy-readme.txt(作为ProjectName.deploy.cmd的一部分生成)中所述将参数从/ T更改为/ Y时,遇到了以下错误。 Please let me know if I had missed any. 如果我错过了任何事情,请告诉我。 Since this is my first application which I am publishing, your suggestions/comments will help me to fix this issue. 由于这是我正在发布的第一个应用程序,因此您的建议/评论将帮助我解决此问题。

ERROR: C:\\Project>ProjectName.deploy.cmd /Y /L /M: http://localhost/MSDeployAgentService SetParameters from: "C:\\Project\\ProjectName.SetParameters.xml" You can change IIS Application Name, Physical path, connectionString or other deploy parameters in the above file. 错误: C:\\ Project> ProjectName.deploy.cmd / Y / L / M: http:// localhost / MSDeployAgentService SetParameters from:“ C:\\ Project \\ ProjectName.SetParameters.xml”您可以更改IIS应用程序名称,物理路径,connectionString或上述文件中的其他部署参数。


Start executing msdeploy.exe 开始执行msdeploy.exe


"C:\\Program Files\\IIS\\Microsoft Web Deploy V3\\msdeploy.exe" -source:package='C:\\Project\\ProjectName.zip' -dest:auto,computerName="http://localhost/MSDeployAgentService",includeAcls="False" -verb:sync -disableLink:AppPoolExtension -disableLink:ContentExtension -disableLink:CertificateExtension -setParamFile:"C:\\Project\\ProjectName.SetParameters.xml" -appHostConfigDir:"C:\\Users\\XXXX\\Documents\\IISExpress\\config" -WebServerDir:"C:\\Program Files\\IIS Express\\" -webServerManifest:"iisexpress.exe.manifest" Info: Using ID 'd7a7b830-175c-4ec7-9baa-5d01db271c30' for connections to the remote server. “ C:\\ Program Files \\ IIS \\ Microsoft Web Deploy V3 \\ msdeploy.exe” -source:package ='C:\\ Project \\ ProjectName.zip'-dest:auto,computerName =“ http:// localhost / MSDeployAgentService”, includeAcls =“ False” -verb:sync -disableLink:AppPoolExtension -disableLink:ContentExtension -disableLink:CertificateExtension -setParamFile:“ C:\\ Project \\ ProjectName.SetParameters.xml” -appHostConfigDir:“ C:\\ Users \\ XXXX \\ Documents \\ IISExpress \\ config“ -WebServerDir:” C:\\ Program Files \\ IIS Express \\“ -webServerManifest:” iisexpress.exe.manifest“信息:使用ID'd7a7b830-175c-4ec7-9baa-5d01db271c30'连接到远程服务器。 Info: Creating application (Default Web Site/MyApplication) Info: Adding ACL's for path (Default Web Site/MyApplication) Error: (2/17/2016 11:17:19 PM) An error occurred when the request was processed on the remote computer. 信息:创建应用程序(默认网站/ MyApplication)信息:添加路径的ACL(默认网站/ MyApplication)错误:(2/17/2016 11:17:19 PM)在远程上处理请求时发生错误电脑。 Error: This access control list is not in canonical form and therefore cannot be modified. 错误:此访问控制列表不是标准格式,因此无法修改。 at System.Security.AccessControl.CommonAcl.ThrowIfNotCanonical() at System.Security.AccessControl.CommonAcl.Purge(SecurityIdentifier sid) at System.Security.AccessControl.CommonSecurityDescriptor.PurgeAccessControl(SecurityIdentifier sid) at System.Security.AccessControl.ObjectSecurity.PurgeAccessRules(IdentityReference identity) at Microsoft.Web.Deployment.SetAclProvider.Add(DeploymentObject source, Boolean whatIf) at Microsoft.Web.Deployment.DeploymentObject.Update(DeploymentObject source, DeploymentSyncContext syncContext) at Microsoft.Web.Deployment.DeploymentSyncContext.HandleUpdate(DeploymentObject destObject, DeploymentObject sourceObject) at Microsoft.Web.Deployment.DeploymentSyncContext.SyncChildrenOrder(DeploymentObject dest, DeploymentObject source) at Microsoft.Web.Deployment.DeploymentSyncContext.ProcessSync(DeploymentObject destinationObject, DeploymentObject sourceObject) at Microsoft.Web.Deployment.DeploymentObject.SyncToInternal(DeploymentObject destObject, DeploymentS 在System.Security.AccessControl.CommonAcl.ThrowIfNotCanonical()在System.Security.AccessControl.CommonAcl.Purge(SecurityIdentifier sid)在System.Security.AccessControl.CommonSecurityDescriptor.PurgeAccessControl(SecurityIdentifier sid)在System.Security.AccessControl.ObjectSecurity.PurgeAccessRules Microsoft.Web.Deployment.DeploymentSyncContext.HandleUpdate(DeploymentObject)的(IdentityReference身份)在Microsoft.Web.Deployment.DeploymentObject.Update(部署对象源,DeploymentSyncContext syncContext)在Microsoft.Web.Deployment.SetAclProvider.Add(部署对象源,布尔whatIf) Microsoft.Web.Deployment.DeploymentSyncContext.SyncChildrenOrder(Microsoft.Web.Deployment.DeploymentSyncContext.ProcessSync(DeploymentObject destinationObject,DeploymentObject sourceObject))上的Microsoft.Web.Deployment.DeploymentObject.SyncToInternal(DeploymentObject dest,DeploymentObject源) DeploymentObject destObject,DeploymentS yncOptions syncOptions, PayloadTable payloadTable, ContentRootTable contentRootTable, Nullable 1 syncPassId, String syncSessionId) at Microsoft.Web.Deployment.DeploymentAgent.HandleSync(DeploymentAgentAsyncData asyncData, Nullable 1 passId) Error count: 1. yncOptions syncOptions,PayloadTablepayloadTable,ContentRootTable contentRootTable,Nullable 1 syncPassId, String syncSessionId) at Microsoft.Web.Deployment.DeploymentAgent.HandleSync(DeploymentAgentAsyncData asyncData, Nullable 1 passId)错误计数:1。

The issue was fixed after few surfings. 经过几次冲浪后,此问题已解决。

opened Control Panel -> Administrative Tools -> Internet Information Services (IIS) Manager. 打开控制面板->管理工具-> Internet信息服务(IIS)管理器。 In the left pane, you can find connections tab and if the deployment simulation has worked (the command with :/T), then you should find your application copied <User> -> Sites -> MyApplication. 在左窗格中,您可以找到“连接”选项卡,并且如果部署模拟已经成功(带有:/ T的命令),那么您应该找到复制了<User>-> Sites-> MyApplication的应用程序。

Right click MyApplication, select Edit Permissions -> Security -> you might get a pop up saying "Permissions on <APP> are incorrectly ordered, which may cause some entries to be ineffective". 右键单击MyApplication,选择“编辑权限->安全->”,您可能会弹出一个窗口,提示“ <APP>上的权限顺序错误,这可能导致某些条目无效”。 Click OK and click Advanced button. 单击确定,然后单击高级按钮。

Click Change Permissions and you might get another pop up to reorder. 单击更改权限,您可能会弹出另一个窗口以重新排序。 Click reorder, and exit. 单击重新排序,然后退出。

Now try the above mentioned command and it works.! 现在尝试上面提到的命令,它可以工作。

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

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