无法在iframe中访问WordPress信息中心

时间:2013-01-15 13:13:56

标签: wordpress iframe x-frame-options

我在http://foo.example.com上有一个以http://bar.example.com为目标的iframe。

On http://bar.example.com是一个WordPress安装。我能够查看该页面并点击所有页面并发布但当我尝试转到后端时我得到了

Refused to display document because display forbidden by X-Frame-Options.

并且请求被中止。

根据this question我找到了这个成功发送的标题:

header('X-Frame-Options: GOFORIT');

还有什么可以限制对仪表板(和登录屏幕)的访问?

我可以访问这两个子域,也可以使用htaccess

2 个答案:

答案 0 :(得分:4)

根据这个,在WordPress Answers中,Receiving “This content cannot be displayed in a frame” error on login page,WordPress发送一个特殊的标题

X-Frame-Options: SAMEORIGIN

阻止clickjacking。因此,将管理员嵌入为iframe。

可以从wp-includes/default-filters.php删除此标题,删除一些操作,但风险自负。

  

有人可能会注册一个名称非常相似的域名,将您的登录信息作为后台iframe嵌入,并在您尝试输入时记录登录凭据。

请阅读WPSE的完整问答。

答案 1 :(得分:4)

这是一个更好的解决方案,在您更新Wordpress时不会中断:

remove_action( 'login_init', 'send_frame_options_header' );
remove_action( 'admin_init', 'send_frame_options_header' );

如果您正在使用Apache,这是另一种解决方案。把它扔进你的.htaccess:

<IfModule mod_headers.c>
    Header unset X-Frame-Options
    Header always unset X-Frame-Options
</IfModule>