wordpress如何将X-FRAME限制为同源?

Dom*_*Dom 5 php wordpress .htaccess

我有两个 WordPress 网站,一个为 sourceURL,另一个为目标 URL。targetURL 有一个 iframe 来呈现来自 sourceURL 的内容。当我尝试运行显示其他内容的 iframe 时,出现以下错误:

\n\n
destinationURL refused to display sourceURL in a frame because it set \'X-Frame-Options\' to \'sameorigin\'.\n
Run Code Online (Sandbox Code Playgroud)\n\n

我似乎找不到 wordpress 设置 x-frame 选项的位置。我检查了以下内容:

\n\n
    \n
  • .htaccess - 我删除了 htaccess 文件中的所有安全选项。我还尝试通过 htaccess 启用 x-frame。这样做会给我一个错误,即我有两个相互冲突的规则。

    \n\n

    <IfModule mod_headers.c>\n Header set X-Frame-Options "ALLOW-FROM destinationURL\xe2\x80\x9c\n</IfModule>

  • \n
  • 所有与 root wp 相关的文件。我似乎找不到任何更新设置的配置。

  • \n
  • 插件 - 我删除了安全插件,以防它们将我的选项设置为 sameorigin,并且我尝试了旨在更新 x-frame 选项的插件。
  • \n
\n\n

在这个阶段,我怀疑 wordpress 有默认配置。

\n\n

wordpress如何将x-frame选项限制为sameorigin?

\n\n

我希望你们中的一个人以前经历过这种情况,并在我在所有文件中 grep 查找 \'x-frame\' 或 sameorigin 之前,引导我了解 wordpress 如何禁用 x-frame 选项。

\n\n

- 更新 -

\n\n

我创建了一个 WordPress 插件来删除它们作为变量的安全性。后来我意识到我收到的 X 帧错误是小写的(相同来源),这突出表明它不是来自 wordpress,因为它们的文件都设置为大写。

\n\n

我与我的网络托管提供商交谈,发现他们设置了 apache 配置来限制 X-Frames。

\n\n

为了解决我的问题,我将以下行添加到我的 .htaccess 文件中。希望这对某人有帮助。

\n\n
Header always unset X-Frame-Options\n
Run Code Online (Sandbox Code Playgroud)\n

cee*_*yoz 4

https://github.com/WordPress/WordPress/search?utf8=%E2%9C%93&q=x-frame-options

send_frame_options_header函数处理这个问题。这是与钩子相关的动作login_init

您可以通过在自定义插件中执行以下操作来删除它:

remove_action('login_init', 'send_frame_options_header');
Run Code Online (Sandbox Code Playgroud)