使用反向代理在SharePoint托管的Silverlight应用程序中显示混合内容

使用反向代理在SharePoint托管的Silverlight应用程序中显示混合内容,silverlight,sharepoint,load-balancing,reverse-proxy,Silverlight,Sharepoint,Load Balancing,Reverse Proxy,我有一个可通过internet访问的SharePoint网站。在内部,http请求被路由到https reauest,SSL被卸载到我们的负载平衡器/反向代理设备上。除了Silverlight应用程序外,其他一切都运行良好 此应用程序位于其中一个页面上,当页面加载到浏览器中时,它将连接到SharePoint列表以检索其数据。此时,IE弹出一个窗口,显示“显示混合内容”。显然,它认为页面上混合了http和https内容 这是否意味着我必须通过SSL托管web服务(并将其传递到SharePoint服

我有一个可通过internet访问的SharePoint网站。在内部,http请求被路由到https reauest,SSL被卸载到我们的负载平衡器/反向代理设备上。除了Silverlight应用程序外,其他一切都运行良好

此应用程序位于其中一个页面上,当页面加载到浏览器中时,它将连接到SharePoint列表以检索其数据。此时,IE弹出一个窗口,显示“显示混合内容”。显然,它认为页面上混合了http和https内容


这是否意味着我必须通过SSL托管web服务(并将其传递到SharePoint服务器),而不让反向代理处理它?或者,这类场景的解决方法是什么?

以下是我用来解决此问题的代码:

_siteURL=System.Windows.Browser.HtmlPage.Document.DocumentUri.AbsoluteUri.StartWith(“https:”) ? SP.ApplicationContext.Current.Url.Replace(“http”、“https”): SP.ApplicationContext.Current.Url


这使我的Silverlight应用程序可以在外部(通过我们的F5/反向代理)和内部基于SharePoint(扩展)表单的网站上工作。

我将Silverlight应用程序使用的更改为使用“https”而不是“http”。显然,当从外部访问站点时,这一点不会改变。现在,我的dilemna是。。。我如何知道Silverlight应用程序何时从我们的网络外部运行(并且需要“https”)以及何时在内部运行。。。