【发布时间】:2011-05-18 21:13:59
【问题描述】:
我有一个使用 IIS7 部署在防火墙后面的 Silverlight 应用程序,我想通过 URL 重写一个公共 URL 来访问它。所以http://someurl.com 会重写为http://internalserver/Default.aspx,这就是我设置规则的方式:
<rewrite>
<rules>
<rule name="WebSite_InboundRule" patternSyntax="Wildcard" stopProcessing="true">
<match url="*" />
<action type="Rewrite" url="http://internalserver/Default.aspx" appendQueryString="false" />
<conditions logicalGrouping="MatchAny" />
</rule>
</rules>
</rewrite>
此时(在 ASPX 包装器中将一些相对路径更改为绝对路径后),浏览器从 http://someurl.com 到达 Default.aspx 页面,但随后页面为空白,Silverlight.js 文件是最后一件事到 Fiddler 显示已下载。右键单击该页面会显示 Silverlight 上下文菜单,所以我猜测 Silverlight 插件可以正常加载,但由于某种原因它无法下载 XAP 文件。
非常感谢您对此的任何帮助。
【问题讨论】:
-
您的 xap 网址是什么样的?查看重写规则,您似乎将所有传入的 url 重写为 internalserver/Default.aspx,包括对 xap 的请求。
标签: silverlight iis-7 url-rewriting