什么是 "AppOffline" 阻止我的机器人应用程序发布到 IIS Web 服务器?
What is "AppOffline" which prevents my bot application from getting published to the IIS web server?
刚刚使用 Bot 框架从此处下载的模板创建了一个应用程序:http://aka.ms/bf-bc-vstemplate。
在测试模拟器中运行良好。但是当发布到IIS服务器时,我得到了这个错误:
Error Web deployment task failed. ((5/6/2016 3:03:54 PM) An error occurred when the request was processed on the remote computer.)
(5/6/2016 3:03:54 PM) An error occurred when the request was processed on the remote computer.
Exception has been thrown by the target of an invocation.
at System.RuntimeMethodHandle._SerializationInvoke(Object target, SignatureStruct& declaringTypeSig, SerializationInfo info, StreamingContext context)
at System.Runtime.Serialization.ObjectManager.CompleteISerializableObject(Object obj, SerializationInfo info, StreamingContext context)
at System.Runtime.Serialization.ObjectManager.FixupSpecialObject(ObjectHolder holder)
at System.Runtime.Serialization.ObjectManager.DoFixups()
at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler handler, __BinaryParser serParser, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, IMethodCallMessage methodCallMessage)
at Microsoft.Web.Deployment.Base64EncodingHelper.DeserializeHelper(BinaryFormatter formatter, Byte[] buffer)
at Microsoft.Web.Deployment.Base64EncodingHelper.Deserialize(String str, Exception& handledException)
at Microsoft.Web.Deployment.SerializationHelper.Deserialize(String str)
at Microsoft.Web.Deployment.DeploymentAgentWorkerRequest.GetTraceMessage(String[] additionalMessage)
at Microsoft.Web.Deployment.DeploymentAgent.HandleSync(DeploymentAgentWorkerRequest workerRequest)
at Microsoft.Web.Deployment.DeploymentAgent.HandleRequestWorker(DeploymentAgentAsyncData asyncData)
at Microsoft.Web.Deployment.DeploymentAgent.HandleRequest(DeploymentAgentAsyncData asyncData)
at Microsoft.Web.Deployment.DeploymentAgent.BeginProcessRequest(DeploymentAgentWorkerRequest workerRequest, AsyncCallback callback, Object extraData)
Unrecognized rule 'AppOffline'. ParkingBot 0
AppOffline
错误是什么?
检查部署文件夹中是否有名为 app_offline.htm 的文件。该文件适用于您正在部署并希望在完成之前阻止登录站点的情况。该文件可能在部署后未被删除。
我通过执行以下操作解决了这个问题:
- 找到部署的 .pubxml 文件
- 将 EnableMSDeployAppOffline 切换为真
错误。
您可能需要此功能,因此它可能不是一个选项。但是我的应用程序没有这个要求。
确保您的服务器上安装了最新版本的 IIS Web Deploy。我收到了这个错误。
我需要在我们的服务器上安装 Web Deploy 3.6 修复它。
要添加到 jbtule 的答案 (),您可能还需要降级到 3.6 版。我安装了 Web Deploy 4 并收到“Unrecognized rule 'AppOffline'”错误,但是在卸载版本 4 并安装版本 3.6 后,使用 <EnableMSDeployAppOffline>True</EnableMSDeployAppOffline>
进行部署
立即工作。
刚刚使用 Bot 框架从此处下载的模板创建了一个应用程序:http://aka.ms/bf-bc-vstemplate。
在测试模拟器中运行良好。但是当发布到IIS服务器时,我得到了这个错误:
Error Web deployment task failed. ((5/6/2016 3:03:54 PM) An error occurred when the request was processed on the remote computer.)
(5/6/2016 3:03:54 PM) An error occurred when the request was processed on the remote computer.
Exception has been thrown by the target of an invocation.
at System.RuntimeMethodHandle._SerializationInvoke(Object target, SignatureStruct& declaringTypeSig, SerializationInfo info, StreamingContext context)
at System.Runtime.Serialization.ObjectManager.CompleteISerializableObject(Object obj, SerializationInfo info, StreamingContext context)
at System.Runtime.Serialization.ObjectManager.FixupSpecialObject(ObjectHolder holder)
at System.Runtime.Serialization.ObjectManager.DoFixups()
at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler handler, __BinaryParser serParser, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, IMethodCallMessage methodCallMessage)
at Microsoft.Web.Deployment.Base64EncodingHelper.DeserializeHelper(BinaryFormatter formatter, Byte[] buffer)
at Microsoft.Web.Deployment.Base64EncodingHelper.Deserialize(String str, Exception& handledException)
at Microsoft.Web.Deployment.SerializationHelper.Deserialize(String str)
at Microsoft.Web.Deployment.DeploymentAgentWorkerRequest.GetTraceMessage(String[] additionalMessage)
at Microsoft.Web.Deployment.DeploymentAgent.HandleSync(DeploymentAgentWorkerRequest workerRequest)
at Microsoft.Web.Deployment.DeploymentAgent.HandleRequestWorker(DeploymentAgentAsyncData asyncData)
at Microsoft.Web.Deployment.DeploymentAgent.HandleRequest(DeploymentAgentAsyncData asyncData)
at Microsoft.Web.Deployment.DeploymentAgent.BeginProcessRequest(DeploymentAgentWorkerRequest workerRequest, AsyncCallback callback, Object extraData)
Unrecognized rule 'AppOffline'. ParkingBot 0
AppOffline
错误是什么?
检查部署文件夹中是否有名为 app_offline.htm 的文件。该文件适用于您正在部署并希望在完成之前阻止登录站点的情况。该文件可能在部署后未被删除。
我通过执行以下操作解决了这个问题:
- 找到部署的 .pubxml 文件
- 将 EnableMSDeployAppOffline 切换为真 错误。
您可能需要此功能,因此它可能不是一个选项。但是我的应用程序没有这个要求。
确保您的服务器上安装了最新版本的 IIS Web Deploy。我收到了这个错误。
我需要在我们的服务器上安装 Web Deploy 3.6 修复它。
要添加到 jbtule 的答案 (<EnableMSDeployAppOffline>True</EnableMSDeployAppOffline>
进行部署
立即工作。