2016-07-11 16 views
0

Ich versuche, einen iframe in url example.com/somefile.html von einer Unterdomäne sub.example.com/dir/frame.html zu laden.IFrame selbe Ursprungsrichtlinie vaiolation

Um SOP-Verletzung zu vermeiden, setzen Sie die document.domain attribute auf example.com in JavaScript-Code, in beiden frame.html & somefile.html.

Dies funktioniert in IE und Firefox, aber ich treffe immer noch die folgenden Fehler in Chrome: "Refused, um "frame-url" in einem Rahmen, weil es 'X-Frame-Options' auf 'SAMEORIGIN' gesetzt."

Beim Debuggen und Überprüfen beider Dateien document.domain Wert bekomme ich die erwartete "example.com".

Kann mir jemand aufklären?

+0

In Verbindung stehende: http://StackOverflow.com/Questions/3076414/Ways-To-Circumvent-the-Same-Origin-Policy – Teemu

Antwort

0

document.domain Hacks haben einfach keine Auswirkungen auf X-Frame-Options Regeln. Wenn Sie zulassen möchten, dass die Seite in einem Frame angezeigt wird, müssen Sie die X-Frame-Options Regeln ändern.

Verwenden Sie ALLOW-FROM anstelle von SAMEORIGIN. Die spec has guidance falls Sie mehrere Subdomains zugreifen möchten.

+0

Ich weiß, dass Ihr Vorschlag der "richtige" ist, aber ich habe in https gelesen://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Optionen, die ALLOW_FROM im Chrome-Browser nicht unterstützt. –