这将是很长的后,因为我想尽可能解释和详细说明我的问题。我是后端开发新手,现在我正在使用WCF,C#和.NET Framework 4.5开发安全(https)REST Web服务。对于这种情况,我使用在IIS中配置的自签名证书。 我的问题是,服务主机似乎随机崩溃,没有任何异常或消息在跟踪日志。我在Windows Server 2012 R2上的VMware中进行了测试。在其他操作系统上(WS 2008,WS 2010)似乎工作正常。 这里是我如何与注册事件处理程序的故障状态启动服务:意外的Windows服务器2012 R2上的WCF服务崩溃

private ServiceHost listener = null;

public void Start(byte[] certData, string certPassword) {

int port = Config.MobileServicePort;

SslCertificate cert = new SslCertificate();

cert.RemoveCertificate(port);

cert.InstallCertificate(port, certData, certPassword);

Uri uri = new Uri(string.Format("https://127.0.0.1:{0}/{1}", port, "MobileService"));

if (listener != null) {

listener.Close();

listener = null;

}

listener = new ServiceHost(typeof(MobileService), uri);

listener.Faulted += FaultedStateHandling;

try {

listener.Open();

Logger.System().Info("REGISTER service at '{0}'", uri.ToString());

} catch (TimeoutException timeEx) {

Logger.System().Error("Open timeout exception: " + timeEx);

} catch (CommunicationException comEx) {

Logger.System().Error("Open communication exception: " + comEx);

} catch (Exception ex) {

Logger.System().Error(ex);

}

}

这里是处理器的故障状态:

private void FaultedStateHandling(object sender, EventArgs e) {

try {

Logger.System().Info("");

listener.Abort();

listener.Faulted -= new EventHandler(FaultedStateHandling);

int port = Config.MobileServicePort;

Uri uri = new Uri(string.Format("https://127.0.0.1:{0}/{1}", port, "MobileService"));

listener = new ServiceHost(typeof(MobileService), uri);

listener.Faulted += new EventHandler(FaultedStateHandling);

listener.Open();

Logger.System().Info("");

} catch (Exception ex) {

Logger.System().Error(ex);

}

}

这是我的app.config配置MessageLogging和跟踪:

switchValue="Critical,Information,ActivityTracing"

propagateActivity="true">

type="System.Diagnostics.XmlWriterTraceListener"

initializeData="c:\log\TraceMessages.svclog" />

type="System.Diagnostics.XmlWriterTraceListener"

initializeData="c:\log\MessageLogging.svclog" />

logEntireMessage="false"

logMalformedMessages="true"

logMessagesAtServiceLevel="true"

logMessagesAtTransportLevel="false"

maxMessagesToLog="500"

maxSizeOfMessageToLog="5000"/>

bindingConfiguration="webHttpTransportSecurity"

behaviorConfiguration="REST"

contract="noq.Mobile.Service.IMobileService">

binding="mexHttpsBinding"

contract="IMetadataExchange" />

maxReceivedMessageSize="1000000000">

我用这个问题存货了大约1个月,并且找不到解决方案。我尝试了很多配置,看起来问题更深入。我检查了MSDN论坛和support.microsoft。在那里我发现了类似的问题,但不一样,他们提供了一些热修复,如that。 这个问题可能与虚拟机配置有关吗? 在此先感谢您并提供任何建议。

2016-06-08

Artiom

+0

事件日志(应用程序日志或系统日志)告诉你什么? –

+0

嗨,@rene,所以在WCF跟踪中,我发现了一条错误消息:无法找到与绑定BasicHttpBinding的端点匹配方案http的基地址。注册的基地址方案是[]。 –

+0

@rene [微软提供的修补程序](https://support.microsoft.com/en-us/kb/2537715),但仅适用于WS2008R2。我试图通过在app.config文件中设置BaseAddress来解决此问题,使得此错误不再出现,但它不能解决问题服务仍然崩溃的问题。我尝试了几乎所有类型的服务配置,但仍然没有结果。在系统日志和应用程序日志中 - 什么也没有,服务只是停止响应从客户端(Android),当服务关闭时,在日志中看到消息:握手期间发生未知错误。 –

服务器2012系统崩溃,意外的Windows服务器2012 R2上的WCF服务崩溃相关推荐

  1. 如何解决在Windows Server 2008 R2 上安装证书服务重启后出现 CertificationAuthority 91错误事件...

    很久都没写什么博客了,前一段时间学习2008 R2时,在自己的电脑上同时安装AD 和证书 往往会出现一个CertificationAuthority错误,如下: 产生问题的主要原因是: 证书服务器与D ...

  2. 服务器win系统更新如何设置,Windows服务器更新服务的配置

    0x01 WSUS客户端 wsus客户端可以使windows的各种系统(windows7\8\10\server). 无须安装任何软件. 0x02 客户端配置 wsus客户端通过配置本地组策略来实现. ...

  3. 在Windows Server 2008 R2上安装Ftp服务

    1.打开"管理工具"中的"服务器管理器" 2.在"服务器管理器"中,展开左侧列表"服务器管理器",在"角色&q ...

  4. 服务器的系统日志路径,DirectAdmin 日志路径各种系统中查看方法Windows服务器操作系统 -电脑资料...

    本文章收集了现在常用的系统中查看DirectAdmin 日志路径各种问题的解决办法,有需要了解的朋友可参考, 可以通过admin的Log Viewer来查看默认定义的几个日志文件. 也可以通过ssh来 ...

  5. CSGO社区服务器开服架设搭建教程windows服务器什么配置的合适国际服

    CSGO社区服务器开服架设搭建教程windows服务器什么配置的合适国际服 <反恐精英:全球攻势>,原名Counter-Strike: Global Offensive,是一款由VALVE ...

  6. 浪潮服务器安装windows2008系统,浪潮NF5280M3安装Windows Server 2008 R2注意事项

    近期某单位购买了几台浪潮英信NF5280M3服务器,每台服务器配置有2个E5-2630的CPU.16GB内存.5块2.5寸的600GB的SAS硬盘.服务器到位之后,在安装Windows Server ...

  7. 如何在Windows Server 2008 R2下搭建FTP服务

    听语音 | 浏览:28648 | 更新:2014-12-21 20:42 | 标签:windows 1 2 3 4 5 6 7 分步阅读 在Windows Server 2008 R2下搭建FTP服务 ...

  8. 2012服务器系统下怎么分区,Windows Server 2012之更改系统分区

    [IT168 资讯]最近我发现一个问题,不知道什么原因我的系统磁盘分区(引导启动操作系统的磁盘分区)有时会运行在错误的磁盘上.那么如何更改系统磁盘分区位置呢? 正如你在下面图中所看到的,我的F盘是我的 ...

  9. 服务器系统2012r2升级专业版,Windows Server 2012 R2版本区别

    慕工程0101907 Windows Server 2012 R2是最新的服务器版本Windows,于2013年10月18日发布.这是Windows 8.1的服务器版本,在2013年6月3日的Tech ...

最新文章

  1. python好吗-Python现在就业前景好吗?
  2. Kotlin-如何创建一个好用的协程作用域
  3. ZooKeeper概述与原理
  4. c语言程序设计棋盘不对齐,经典c语言程序设计例(55页)-原创力文档
  5. 使用Apache下poi创建和读取excel文件
  6. 中国网建SMS短信接口调用(java发送短信)
  7. C++对象内存布局测试总结
  8. Iterator pattern-迭代器模式
  9. android手机状态解释,比方android.os.Build.VERSION.SDK
  10. mfc gridctrl 设置某列自动伸长_三明桥梁智能张拉设备数控智能张拉系统全自动智能张拉系统...
  11. 第006讲 多媒体页面 标签汇总
  12. SQL Server 2016 安装
  13. python百例练习之第三例-字典dict()
  14. 双线服务器托管的三大优势
  15. 正向代理与反向代理详解
  16. 鸿蒙轻量级数据存储Preferences
  17. LSTM生成尼采风格文章
  18. S5P4418裸机之SDIO程序
  19. Axis2 报错 Faulty Services
  20. DDD中的值对象和实体

热门文章

  1. Oracle中同义词synonym的作用
  2. 2.python爬虫实战:爬取近5年的中国大学排行榜信息【Python】(测试代码+api例程)
  3. linux 开发板相关命令
  4. 【电商】电商后台设计—促销模块(下)
  5. python 实现热门音乐分析 附代码+数据 +论文
  6. 三十八、SAP设置默认语言
  7. API接口鉴权及加密
  8. python自动标注autocad坐标_Python+matplotlib数据可视化鼠标悬停自动标注功能实现
  9. Win10怎么禁止自动安装软件
  10. 使用Navicat Premium 12导出数据库之间的结构图(E-R图)