zoukankan      html  css  js  c++  java
  • 【转载】Silverlight 应用 WCF RIA Services 在 IIS6 部署问题总结

    WCF RIA Services 部署在IIS6很简单,但是也会出现一些问题

    我们的应用是Silverlight 4 Business Application,应用了WCF RIA Service, .net framework 4 环境下,所以遇到了一些问题

    主要涉及的环境是Windows Server 2003 R2/企业版,未安装Visual Studio 2010环境时的布署。

    安装.net framework 4,Silverlight sdk 4,Silverlight tools等软件包后,如果你的WCF RIA应用还不能正常运行,则要检查以下问题

    1. asp.net的版本要选择为4.0.30319

    解决:在IIS6管理器中,选择Web应用的属性,asp.net标签页中,Asp.net版本选为4.0.30319,以为默认的版本应该是2.0.50727.

    现象:如果配置不对,出错为web.config配置项错误。

    2. xap的Mine类型问题。

    现象:如果配置不对,出错为Silverlight内容不出现,无论是aspx的测试页,还是html的测试页。

    原因:xap在IIS6中要注册一个MIME类型,注册为application/x-silverlight-app 或者 application/octet-stream 都可以下载

    操作:在IIS6管理器中,在机器节点,就是网站节点的父节点,比如,你的主机名是MyServer,则节点名就是这个MyServer(local computer),点属性,选择MINE 类型,进行注册。

    3. 允许ASP.NET 4.0.30319

    现象:aspx的测试页无法运行,not found错误,但是html的测试页可以正常运行。

    原因:如果刚刚安装的.net framework 4.0环境,IIS6默认为禁止ASP.NET 4.0.30319的脚本运行。

    解决:在IIS6管理器中,选择主机名节点的子节点中的Web服务扩展(这个节点同“Web Site”同级,同级的有Application pools,Web Sites,Web Service Extension),观察ASP.NET 4.0.30319项前图标应该有绿地白色对钩,Status应该是Allowed。如果不对,右键选择Allow,设置完成。

    4. svc 无法访问问题

    现象:silverlight运行正常,但是调用WCF RIA Service部分出现异常,弹出错误提示。如登录或建立新用户时。

    类似这样的silverlight异常框

    Load operation failed for query 'GetUser'. 远程服务器返回了错误: NotFound。

    位于 System.ServiceModel.DomainServices.Client.OperationBase.Complete(Exception error)
    位于 System.ServiceModel.DomainServices.Client.LoadOperation.Complete(Exception error)
    位于 System.ServiceModel.DomainServices.Client.DomainContext.CompleteLoad(IAsyncResult asyncResult)
    位于 System.ServiceModel.DomainServices.Client.DomainContext.<>c__DisplayClass1b.<Load>b__17(Object )

    原因:svc服务没有建立

    解决:将Web应用目录中,目录安全标签页中“认证和访问控制”弹出对话框中,仅选择“Enabled anonymous access ”使能匿名访问,而去掉集成认证。就是说仅有匿名访问。

    **设置完成,最好将整个IIS 服务重新启动,这样不至于浪费时间。

    5. 其他解决

    如果IIS6在.net framework 之后安装,可能需要将一些扩展名注册到IIS扩展中,可以使用下面第一个命令补救。完成后,在

    IIS管理器中Web Site Properties, under Home Directory/Configuration, could you check if extension .svc is mapped to aspnet_isapi.dll

    run "c:\windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis -i"

    run "c:\windows\Microsoft.NET\Framework\v4.0.30319\ServiceModelReg.exe -i"

    有人说,将以下文件复制到bin目录下,我们测试结果可以不放

    system.servicemodel.domainservices.entityframework

    system.servicemodel.domainservices.hosting

    system.servicemodel.domainservices.server

    的copy local = true。

    有人说,估计是IIS重写URL机制导致的,升级到IIS7应该能解决你的问题。

    按照以上1~5,在IIS6中可以解决问题,不必尝试去升级IIS7,因为在IIS7的部署中,仍然会有问题出现。

  • 相关阅读:
    flask cookies,session;flask session如何存在文件或者redis中
    requesets库请求返回json数据进 str in str 判断是无法找到对应关键字.
    resquests库get请求返回数据编码问题:可能是vscode自身 输出乱码
    Python 中json与字典的关系
    python pip :Fatal error in launcher: Unable to create process using '"'
    转载:关于js浮点数计算精度不准确问题的解决办法
    jQuery:使用toggle()方法导致元素消失的问题
    静态页面(一):原生JS模拟京东秒杀专场倒计时
    转载:深入理解css基线与行高
    JavaScript常见引用类型笔记(一):Array类型(上)
  • 原文地址:https://www.cnblogs.com/chriskwok/p/2189439.html
Copyright © 2011-2022 走看看