2011-05-04 52 views
0

我使用Apache服务器作为前端平衡器。所以我也将请求传递给SQL Server Report Server。 主要URL是SSL保护的,因此通过RS的ProxyPass可以使用基本身份验证。为什么SQL Server Report Server 2005/2008硬编码为http://?

报表服务器有一个有趣的问题。报表服务器中的大多数链接似乎都是硬编码的http://。有了这个问题,您点击/ reports URL的许多链接都会为您提供Apache前端服务器的“错误请求(无效主机名)”。

您可以浏览报告,您可以打开报告,但如果您点击例如顶部的根链接或查看详细信息链接切换列表模式,则报表服务器使用http://yourserver/reports/ ...这会导致错误。在此设置中,正确的链接是https://。

到目前为止没有http://硬编码工作的链接。

我已经在微软打开了一张支持凭证,已经升级到开发团队。结果是......这是设计而不能改变的。 MS确实如此审查?无论如何。有没有人面临相同的情况,并得到解决方法来解决这个问题?

我不熟悉Apache配置,但也许有办法在Apache中做一个URL重写?因此,如果Apache获得http://myfrontendurl/reports/...,它将用https://替换请求?

+0

我有同样的行为。我真的很讨厌他们声称荒唐的事情是按照设计进行的。 Arrgh。 – Sam 2011-05-04 22:42:59

+0

也许你可以在报告服务中禁用http绑定,它将不再在两者之间切换。 – Sam 2011-05-04 22:43:27

+0

嗨山姆,你能详细解释一下你的意思吗?我在rsreportserver.config中尝试使用https://定义主URL,但没有结果。 – YvesR 2011-05-05 03:30:02

回答

1

我建议停用Reporting Services配置工具的http访问并查看会发生什么。

+0

事实上,如果你开始设置SSL证书然后定义一个特定的IP地址,那么你会崩溃/ report服务器:S – YvesR 2011-05-06 21:18:54

+0

我没有设法像这样设置它,服务器是后端服务器,所以它不应该有SSL证书。所以我现在将专注于解决方案,使用apache重写所有URL ...第二种方法是踢/报告并阅读目录表以创建我自己的用户界面...... – YvesR 2011-05-06 21:20:30

+0

是的,让SSL工作可以是有点棘手。 – Sam 2011-05-09 21:04:52