php 如何在wordpress网站中设置X框架选项标题

vyswwuz2  于 2023-03-07  发布在  PHP
关注(0)|答案(4)|浏览(170)

我主持了一个网站,这是使用WordPress创建的。
我收到一条"X-Frame-Options Header Not Set"的安全警报,但我不知道这是什么意思。
有谁能解释一下这个警告是关于什么的,并给予我一个如何阻止它发生的解决方案吗?

yzxexxkh

yzxexxkh1#

这里有一个更简单的一行程序来设置X-Frame-Options SAMEORIGIN,将以下代码添加到当前WordPress主题的functions.php文件中:
add_action( 'send_headers', 'send_frame_options_header', 10, 0 );

unftdfkk

unftdfkk2#

    • 备选案文1**:进入wordpress-root/wp-includes/functions. php并搜索"X-Frame-Options",您将找到该函数
function send_frame_options_header() {
@header( 'X-Frame-Options: SAMEORIGIN' );
}

如果你的functions.php文件中没有定义X-Frame-Options,你可以把代码粘贴到functions.php文件中。为了防止站点在WordPress中跨框架脚本,请在SAMEORIGIN中使用X-Frame-Options。

    • 备选案文2:**

或者你也可以从wordpress根文件夹中的. htaccess文件中设置X-Frame-Options。只需将下面的代码粘贴到. htaccess文件中。

Header set X-Frame-Options SAMEORIGIN
cfh9epnr

cfh9epnr3#

在任何PHP应用程序中,都可以在发送页面内容之前设置header,这可以通过header函数来完成。

header('X-Frame-Options: SAMEORIGIN');
qojgxg4l

qojgxg4l4#

我在多站点安装时遇到了这个错误,它阻止子站点显示插件的详细信息(当你点击"查看详细信息"时,它会打开一个弹出窗口)。
我解决了将此添加到我的wp-config.php

header('X-Content-Security-Policy: frame-ancestors https://*.MYDOMAIN.com');
header('Content-Security-Policy: frame-ancestors https://*.MYDOMAIN.com');

更新:
这只适用于子域,对于别名域,我不得不用https://*将所有内容列入白名单。

相关问题