質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.30%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

2回答

1780閲覧

wordpressでiframeを使いクロスドメイン制約を回避したい

masann

総合スコア37

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2022/04/13 13:43

編集2022/04/17 12:33

お世話になります。

私はwordpressでサイトを運営しているものです。
今回このサイトでガチャのようなコンテンツを作成しました。

これをiframeタグで配布したいと考えています。

私のサイト ← iframe ← ほかのサイト様(別ドメイン)

ただここで問題があって別ドメインからではiframe内の”回す”ボタンでjavascriptが発火しないのです。
原因はクロスドメイン制約だと思うのですが、様々なサイト様で調べて.htaccessに

<IfModule mod_headers.c> Header set Access-Control-Allow-Origin: "*" </IfModule>

と記述してみたのですがエラーが解除できません。
サイトでは機密情報は取り扱わないので制約を外したいです。
書き方に問題があるのでしょうか?

ご教授お願いします。

※サイトは成人向けですのでURLを記載していません。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

CHERRY

2022/04/13 21:17

どのようなエラーが出ているのでしょうか。 また、Access-Control-Allow-Origin を設定した場合、HTTPヘッダには、設定内容は出力されているのでしょうか。
masann

2022/04/14 15:05

Uncaught DOMException: Blocked a frame with origin "https://example.net" from accessing a cross-origin frame. です。
guest

回答2

0

書き方に問題があるのでしょうか?

そもそも、Access-Control-Allow-OriginCORSに対応するための指定です。iframeのクロスオリジン制約に対しては無関係です。

投稿2022/04/13 22:03

maisumakun

総合スコア146603

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

masann

2022/04/14 15:07

回答ありがとうございます。ではiframeのクロスオリジン制約を回避する方法はあるのでしょうか? 広告の中にはiframeの中のjavascriptが動くものもあり不可能ではないと思うのですが方法がわかりません。
maisumakun

2022/04/14 21:47

iframeの内側と外側の両方にコードを書く必要がありますが、postMessageでのやり取りは可能です。
guest

0

自己解決

皆様
回答くださりありがとうございます。

解決方法がわかりました。
というのもクロスドメインの制約はjavascriptではなくbuttonの発火を妨げていることが分かりました。そのためaリンクによるリロードを発火条件にしたところうまく行きました。
初歩的な勘違いでした。

投稿2022/04/17 12:37

masann

総合スコア37

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.30%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問