私は2つのウェブサイト http://www.aaa.com と http://www.bbb.com を持っており、それらを表示する必要があります。
今私はindex.html
にiframeを入れてaaa.comにアップロードします。フロントエンドには問題ありませんが、空白のページが表示されるバックエンドには機能しません。
この問題を解決する方法を誰かが私に提案できますか?
@toschoのバージョンを拡張しようとしました
//remove the restriction
remove_action( 'login_init', 'send_frame_options_header' );
remove_action( 'admin_init', 'send_frame_options_header' );
//for added security
add_action( 'login_init', 'Access_Control_Allow_Origin' );
add_action( 'admin_init', 'Access_Control_Allow_Origin' );
function Access_Control_Allow_Origin(){
$Origin=get_http_Origin();
$allowed_origins=array(//add your domains or keeps empty
"aaa.com",
"bbb.com",
);
$allowed=false;
if(count($allowed_origins)>0){
foreach($allowed_origins as $allowed_Origin){
if (strstr($Origin,$allowed_Origin)){
$allowed=true;
break;
}
}
}else{
$allowed=true;
}
if($allowed){
return true;
}else{
send_Origin_headers();
}
}
デフォルトではWordPressは/wp_admin/
と/wp-login.php
へのiframeの埋め込みを防ぐためにHTTPヘッダを送信します。
X-Frame-Options: SAMEORIGIN
これはセキュリティ機能です。このヘッダを削除したい場合は、フィルタを削除してください。
remove_action( 'login_init', 'send_frame_options_header' );
remove_action( 'admin_init', 'send_frame_options_header' );
しかし、Tom J Nowellが提案したように、マルチサイト機能を実際に使用する必要があります。