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的部署中,仍然会有问题出现。

  • 相关阅读:
    leetcode 576. Out of Boundary Paths 、688. Knight Probability in Chessboard
    leetcode 129. Sum Root to Leaf Numbers
    leetcode 542. 01 Matrix 、663. Walls and Gates(lintcode) 、773. Sliding Puzzle 、803. Shortest Distance from All Buildings
    leetcode 402. Remove K Digits 、321. Create Maximum Number
    leetcode 139. Word Break 、140. Word Break II
    leetcode 329. Longest Increasing Path in a Matrix
    leetcode 334. Increasing Triplet Subsequence
    leetcode 403. Frog Jump
    android中webView加载H5,JS不能调用问题的解决
    通过nginx中转获取不到IP的问题解决
  • 原文地址:https://www.cnblogs.com/haio/p/1775809.html
Copyright © 2011-2022 走看看