angular - SSRS ReportServer 返回 404,但仅在加载 Angular 站点之后
问题描述
我正在开发一个托管在 IIS 8.5 中的网站。该网站有指向 SSRS ReportViewer 的链接。
我们已经开始使用 ASP.NET Core 后端和 Angular 前端重写网站。我们还没有开始重写 ReportServer 的链接,我们的计划是有一个过渡阶段,新旧网站一起可用,功能会慢慢迁移。我们最近刚刚首次部署了新网站,遇到了一个奇怪的问题。
用户登录原始网站。他们单击链接并被发送到使用 ReportViewer 查看报告(此链接有效)。然后,用户在单独的浏览器选项卡中导航到新站点。当用户单击返回原始选项卡并尝试单击同一个报告时,到 ReportViewer 的链接被破坏并显示 404 错误。
需要明确的是,该网站有一个类似的网址
报告网址的示例是
https://domainname/ReportServer/Pages/ReportViewer.aspx?/customer/args
角度站点托管在
我意识到 ReportViewer 不再托管在 IIS 中。似乎一旦访问了 Angular 站点,它就会覆盖 ReportViewer 站点。关闭显示 Angular 站点的浏览器选项卡并不能解决问题。但是,清除浏览器缓存并重新加载 ReportViewer 选项卡允许用户再次查看报告。
ReportViewer 和/或 Angular 网站是否缺少一些配置?
解决方案
事实证明,IIS 中有一条重写规则,强制所有内容都转到 https。但是,ReportViewer 未配置为在 https 下工作,仅在 http 下工作。答案是将 ReportViewer 也配置为使用 https。
我们没有深入了解为什么它只是在重定向到 Angular 后才失败。
推荐阅读
- c++ - 用于 const 类型和表达式的 VScode C++ 调试
- sql - 根据其他列的值选择总和
- autohotkey - 向浏览器窗口自动热键发送关键事件的问题
- javascript - 意外的令牌“this”(javascript)
- javascript - 如何在shaka播放器上使用自定义视频控制组件,如播放、暂停、静音等?
- html - CSS 让滚动条占据自己的空间而不覆盖页面内容
- python - 在高速公路组件中捕获连接错误
- javascript - SyntaxError: Cannot use import statement when following vue-test-utils 官方教程
- azure - 当我们在 Azure 中的商业云中工作时,从 gov 云中提取 docker 镜像,反之亦然
- sql - 连接查询SQL问题重复行主键?