【发布时间】:2020-05-02 20:54:51
【问题描述】:
前提
我需要一种方法在来自a few websites 的响应到达my browser 之前删除X-Frame-Options 标头。
我这样做是为了正确渲染my custom kiosk webpage,其中有iframes 指向don't want to show up in frames 的网站。
我尝试过的
我尝试使用squid 设置代理并将其reply_header_access 选项配置为deny X-Frame-Options 标头,因为服务器接收到它们,但由于某种原因无法按预期工作。我已经确认我确实在通过 Squid 代理,并且我已经确认 X-Frame-Options 标头仍然存在,尽管我的 squid.conf 文件包含以下内容:
reply_header_access X-Frame-Options deny all
并使用 --enable-http-violations 选项构建了 squid(在我的 Mac 上使用 Homebrew)。
在追查了很多这种方法可能出现的问题后,我决定 reply_header_access 选项不能完全按照我的想法做(在将标头返回给客户端之前修改标头)。
所以,我尝试使用另一个代理服务器。在阅读a Stack Overflow question 询问与我的情况大致相似的情况后,我决定尝试使用node-http-proxy 库。但是,我以前从未使用过 Node,所以我很快就迷失了方向,并且我不知道如何为我的特定目的实现该库。
问题
使用 Node 似乎是一个非常简单的解决方案,那么如何使用 Node 设置代理来从响应中删除 X-Frame-Options 标头?
另外,为什么 Squid 不删除标题,即使我尝试设置它这样做?
最后的选择:有没有更简单的方法来实现我在iframe 中呈现我想要的任何页面的最终目标?
【问题讨论】:
-
您是否设法设置代理并绕过 x-frame-options?
标签: node.js iframe proxy http-headers squid