nginx 更改X-Frame-Options以允许所有域

7fhtutme  于 2023-01-20  发布在  Nginx
关注(0)|答案(4)|浏览(624)

我试图使用我的一些网站作为一个iframe从不同的网站我。
我的问题是-其他网站总是不断地改变他的IP地址,没有域名。
所以,我读到过你可以通过在/etc/nginx/nginx.conf中添加这个lint来allo一个特定的域:

add_header X-Frame-Options "ALLOW-FROM https://subdomain.example.com/";

我的问题是:允许我的站点从所有IP地址和域导入为iframe是可能的吗?我应该写什么来实现这一点?
我使用的是Ubuntu 16.04和nginx 1.10.0。

wkyowqbh

wkyowqbh1#

如果设置了它,则只能将其设置为DENY、SAMEORIGIN或ALLOW-FROM(特定原点)。
允许所有域是默认的。如果你想要的话,不要设置X-Frame-Options头。
注意,X-Frame-Options的后继者-CSP's frame-ancestors directive-接受一个允许的起源的 * 列表 *,因此您可以轻松地允许 * 一些 * 起源,而不是没有、一个或全部起源。

dwthyt8l

dwthyt8l2#

ALLOWALL是缺省值。
有时框架MVC,如Rails、Laravel、Django等,会将X_FRAME_OPTIONS设置为SAMEORIGIN,因此可能需要将其重置为原始的ALLOWALL值。

ppcbkaq5

ppcbkaq53#

结束对我工作的是ALLOW-FROM *
我使用的是ALLOWALL,但如上所述,这不再是一个有效的选项,而且我们的PCI扫描也会因为使用了过时的值而被标记。正如Francesco Meli提到的,Rails默认为ALLOWALL,但将其更改为ALLOW-FROM *就成功了!

g6baxovj

g6baxovj4#

你可以从服务器检查远程主机的IP地址,然后发送一个X-Frame-Options响应HTTP头,其值为:“允许发件人ip地址”,其中ip地址是尝试在您的服务器上嵌入内容的远程ip地址。这将允许您的网站被所有使用浏览器中的ip地址访问的网站嵌入。
另一种选择是将内容嵌入到iframe中,并将域名包含在iframe源url中。服务器可以读取域名参数,并将其包含在X-Frame-Options响应头中。

相关问题