Fork me on GitHub

调用Web Service服务出现响应消息的内容类型text/html与绑定text/xml的内容类型不匹配

     错误信息:响应消息的内容类型 text/html; charset=utf-8 与绑定(text/xml; charset=utf-8)的内
容类型不匹配。如果使用自定义编码器,请确保正确实现 IsContentTypeSupported 方法。


    今天小姚给客户做远程的时候出现这问题,第一感觉应该是配置出了问题,但小姚说客户并没有动过配置文件。程序

一直运行很好,直到给服务器做了一些安全配置。没有测试环境,一时无头绪,只好借助Google搜索,没有得到预期的答案。

    小姚说IIS下的Web Service也打不开,这才引起我的注意,习惯性的看了下应用程序日志,发现一片飘红。都是说这进程未启动:

    aspnet_wp.exe 未能启动  

    以为这就解决问题了,但是按照网上提供的方法:更改machine.config文件

         它位于C:\WINNT\Microsoft.NET\ Framework\v1.0.3705(asp.net 1.0是这样,如果你的版本是1.1,文件夹名回不同)\CONFIG\,

将里面一个部件<processModel>中的 username的属性设置为SYSTEM,正因为它原来默认的设置为machine。(PS:2.0的配置文件是:machine.config.comments)

    还是没有效果,后来这两篇文章给了我灵感:

http://blog.donews.com/litterboy/archive/2005/10/11/584183.aspx/

http://xu020408.blog.163.com/blog/static/26548920093238128640/

    查看了下姚的配置Microsoft.NET\Framework\v2.0.50727的安全配置,发现比客户服务器中的安全配置多了一个IUSER_***的用户,将此用户添加到安全配置中.

冲起下IIS,马上可以访问了.

    PS:iisreset IIS重起

         aspnet_regiis.exe -i  aspnet重新注册

两个命令很久没用,全给忘光了~

posted @ 2011-10-07 15:20  idoku  阅读(8035)  评论(2编辑  收藏  举报