【问题标题】:Docker apps inside iframesiframe 中的 Docker 应用程序
【发布时间】:2018-03-04 23:28:51
【问题描述】:

比如说,我有一个纯前端平台,它具有特定的 GUI 元素(标题、侧边栏……),但它的内容来自不同的 Dockerized 应用程序。这些应用驻留在 iframe 中,自己生成一些 html,但同时共享父页面的 header 等元素。

现在,假设可以通过http://myplatform.com/ 访问平台,并且 Docker 应用程序按以下方式进行反向代理:

http://myplatform.com/app1 --> 转到http://app1(名为 app1 的容器) http://myplatform.com/app2 --> 转到http://app2 等等

这意味着,iframe 将具有 src=http://myplatform.com/app1|app2|...

但是如果有人在地址栏中手动输入http://myplatform.com/app1, 他们将获得原始 Docker html 内容,没有平台 GUI 元素。

我的问题: 有没有办法防止这种行为?比如说,跟踪请求是否不是从平台发出的,而是手动/从另一个站点发出的。还是我的方法根本上是错误的?请注意,我是 Docker、反向代理等领域的新手。

【问题讨论】:

    标签: docker iframe reverse-proxy


    【解决方案1】:

    在 dockerized 应用中,验证请求来自 iframe 并且位置 url 正确。 您可以通过将此脚本添加到 iframe 中请求的应用程序来做到这一点:

    if (window.parent === window.top) {
        console.log('I am displayed from main window');
    } else {
        console.log('I am displayed from iframe');
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-12-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-09
      • 1970-01-01
      相关资源
      最近更新 更多