如何让页面仅在使用 cloudflare 时接受来自我网站的 iframe 请求?

Posted

技术标签:

【中文标题】如何让页面仅在使用 cloudflare 时接受来自我网站的 iframe 请求?【英文标题】:How do I make a page accepts Iframe requests from my website only while using cloudflare? 【发布时间】:2022-01-06 20:40:03 【问题描述】:

我有一个网站,决定提供一些游戏页面。

所以我用它自己的服务器和 IP 创建了一个子域。

我在我的游戏子域以及我的主域和 apache 服务器上使用 cloudflare。

我只想让我的网站呈现或能够使用“iframe”标签来呈现来自子域的页面。

限制任何其他 IP 呈现这些页面。

所以我尝试了许多解决方案,例如 .httaccess 文件或制定规则。 这可行吗?

即使它不在 cloudflare 上或代理上,我也需要知道。

如果我只允许网站的IP地址访问子域,当用户请求这个页面时,请求是来自用户的IP还是网站的IP?

这不会造成冲突吗?

谢谢

【问题讨论】:

【参考方案1】:

我认为您需要设置适当的X-Frame-Options 响应标头以及Content Security Policies,以便您可以指示浏览器可以从包含您的 iframe 的主 html 文档中加载哪些资源。

然后,您还需要在 iframe 内容页面中检查它是否正在加载到您的主页中。如果没有,将用户重定向到主页。

您将无法“通过访问者 IP 进行限制”,因为您事先不知道最终用户将拥有哪些 IP(假设您正在处理一个公共网站)

【讨论】:

以上是关于如何让页面仅在使用 cloudflare 时接受来自我网站的 iframe 请求?的主要内容,如果未能解决你的问题,请参考以下文章

如何让 SSL 与 Rails、AWS Elastic Beanstalk 和 Cloudflare 一起使用

使用 Opensea API 检索订单让我无法通过 Cloudflare

如何让 SSL 与 Elastic Beanstalk、Route53 和 Cloudflare 一起使用

如何通过仅在用户滚动到特定部分时调用它来减少谷歌地图 API 命中数

反反爬 解决CloudFlare 5秒盾

令牌输入仅在我刷新页面后才有效