PHP

スポンサー広告

iframeで読み込まれた際に表示されないようにする。

2017/05/23

今時iframeかと思いますが、youtube動画の貼り付けや、広告など広く使われているようです。HTML4.01strictにおいてはiframe自体が未定義だったと思うのでvaldateに通らないので使わない、というか使えない感じだったと思います。それでも何かとiframeで提供されるものが多くて仕方なく利用していました。

HTML5では、そのような現状に合わせてかどうかわかりませんが、iframeが仕様に取り込まれました。現在は、いろいろなところから提供されているiframeをそのまま使うことができますが、frameborder属性は廃止になっていますので注意が必要です。Youtubeの埋め込みタグにはframeborder="0"がかきこまれていますが。

iframeにはname属性の指定ができまして、リンクのターゲットにiframeにつけたnameの値を指定すればそこにリンクが開きます。下のリンクをクリックしていただければわかるのですが、Yahooとgoogleは何も表示してくれません。本サイトともう一つはiframeの中にサイトが表示されます。サーバー側で何か仕込んでいるようです。iframeの初期値は ルパン三世 タイプライター風 CSS のサンプルファイルです。

netkansai

e-yan.net

yahoo

google

ググってみるとサーバの設定でできるようです。サーバの種類によって設定方法が異なるのは当たり前でしょうが、レンタルサーバーなどでは触れない場合があります。ヘッダー情報に X-Frame-Optionsを指定してsameoriginを指定すればいいとのことです。phpでも可能とのことです。

ヘッダー情報なのでHTMLを出力する前に

<?php header('X-FRAME-OPTIONS: SAMEORIGIN'); ?>

を記述してあげればOKとのこと。

netks.org ちなみにここは非ITなブログです。よろしくです。

はトップページだけX-Frame-Optionsを設定していますのでクリックしてもiframeの中は真っ白だと思われます。

rssfeed
コメント
2018年11月06日 22時57分
crojyt さん
JmYtDr <a href="http://cjkzzrudopom.com/">cjkzzrudopom</a>, [url=http://lwksvmlitijx.com/]lwksvmlitijx[/url], [link=http://myrnbudybmlh.com/]myrnbudybmlh[/link], http://oobiblohzfyi.com/
2020年04月05日 17時40分
Yvette King さん
What a terrific post! I spend a couple of minutes on reading, and I am so excited by the information I received, by the manner of writing it
reminded me this page https://saltwaterquarterly.org/watching-what-you-say/. It's actually tough to find something precious on that
subject. But this author appears to be a real professional
because there is a unique style in his writings.
I'm going to subscribe to his new publications, just to not skip anything.
This post works its own reading.

コメントよろしくお願いします。

お名前
コメント