docker - iframe中的Docker应用

标签 docker iframe reverse-proxy

说,我有一个纯前端平台,具有特定的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
他们将获得没有平台GUI元素的原始Docker html内容。

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

最佳答案

在dockerized应用中,确认请求来自iframe,并且位置网址正确。
您可以通过在iframe中将以下脚本添加到应用中来执行此操作:

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

关于docker - iframe中的Docker应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49096486/

相关文章:

laravel - Docker 容器集群

jquery - Ajax请求: Wait till iframe fully loaded or prevent affecting ajax success animations

apache - 从 apache 服务中排除 404

rust - 在 Rust 中使用 Axum、Tokio 和 Hyper 发出外部网络请求的最佳方式是什么?

linux - 在入口点脚本中无法访问通过 docker 容器中的 -e 标志传递的环境变量

python - 如何在Python SDK中运行docker命令

docker - Hyperledger Fabric : Orderer Client failed to connect to orderer. example.com

jquery - ajax请求结果后自动关闭放大的Popup iframe

javascript - iframe 调整器未定义

java - 如何将现有的 http session 从现有服务器加载到另一台服务器?