Skip to content
IframeViewer

Wissen

Warum iframes blockiert werden — und was du tun kannst

Alles, was Iframe Viewer weiß, aufgeschrieben. Überfliege die Überschriften oder spring direkt zur Sandbox-Tabelle.

X-Frame-Options

Der ursprüngliche Anti-Clickjacking-Header. Ein Server fügt ihn der Antwort hinzu, um dem Browser zu sagen, ob das Dokument in <frame>, <iframe>, <embed> oder <object> gerendert werden darf.

DENY

Nie einbetten, auch nicht von derselben Seite.

SAMEORIGIN

Nur von Seiten derselben Origin einbetten.

ALLOW-FROM uri

Veraltet. Moderne Browser ignorieren es — nutze CSP.

Antwort-Header
HTTP/2 200
X-Frame-Options: SAMEORIGIN

Content-Security-Policy: frame-ancestors

Der moderne Ersatz. Unterstützt eine Liste erlaubter Eltern-Origins, Wildcards und Schemata. Sind beide Header vorhanden, ignorieren Browser mit frame-ancestors-Unterstützung X-Frame-Options.

Nur eigene Seite und einen Partner erlauben
Content-Security-Policy: frame-ancestors 'self' https://*.partner.com
Jedes Einbetten blockieren
Content-Security-Policy: frame-ancestors 'none'

Beachte die spiegelbildliche Direktive: frame-src auf deiner Seite bestimmt, welche URLs du einbetten darfst. Funktioniert dein Embed auf Iframe Viewer, aber nicht auf deiner Seite, prüfe zuerst deine eigene CSP.

Sandbox-Flags

Ein leeres sandbox-Attribut entfernt jede Fähigkeit. Gib die Tokens einzeln zurück.

TokenErlaubt
allow-scriptsErlaubt der eingebetteten Seite, JavaScript auszuführen.
allow-same-originBehält die Origin der Seite (Cookies, Storage). Mit Skripten kombiniert hebt das die Sandbox für same-origin-Inhalte auf.
allow-formsErlaubt das Absenden von Formularen.
allow-popupsErlaubt window.open und target=_blank.
allow-popups-to-escape-sandboxGeöffnete Fenster sind nicht sandboxed.
allow-modalsalert(), confirm(), prompt(), print().
allow-top-navigationErlaubt dem Frame, deine Seite zu navigieren.
allow-top-navigation-by-user-activationTop-Navigation nur nach Klick/Tipp.
allow-downloadsErlaubt vom Frame ausgelöste Downloads.
allow-presentationPresentation API (Casting).
allow-pointer-lockPointer Lock API (Spiele).
allow-orientation-lockSperre der Bildschirmausrichtung.

Permissions Policy (allow)

Während sandbox Fähigkeiten entfernt, delegiert allow mächtige Features an den Frame. Jeder Eintrag ist ein Feature-Name, optional gefolgt von einer Allowlist.

<iframe
  src="https://player.example.com/v/123"
  allow="fullscreen; autoplay; picture-in-picture; clipboard-write"
  allowfullscreen
></iframe>

Welche Seiten erlauben iframes?

Die Datenbank, die der Tester nutzt. Beobachtete Werte — sie können sich ohne Ankündigung ändern; prüfe vor dem Ausliefern mit dem curl-Snippet.

DomainEinbettenHeader / Alternative
google.comBlockiertX-Frame-Options: SAMEORIGINGoogle Maps and YouTube expose dedicated /embed endpoints instead.
youtube.comBlockiertX-Frame-Options: SAMEORIGINUse https://www.youtube.com/embed/VIDEO_ID for embedding.
facebook.comBlockiertX-Frame-Options: DENYUse the official Facebook Page/Post plugins.
instagram.comBlockiertX-Frame-Options: SAMEORIGINUse instagram.com/p/ID/embed/ for public posts.
twitter.comBlockiertX-Frame-Options: DENYUse publish.twitter.com to get a widget snippet.
x.comBlockiertX-Frame-Options: DENYUse publish.twitter.com to get a widget snippet.
linkedin.comBlockiertX-Frame-Options: SAMEORIGIN
github.comBlockiertX-Frame-Options: DENYGists can be embedded via the script snippet on each gist.
amazon.comBlockiertX-Frame-Options: SAMEORIGIN
netflix.comBlockiertX-Frame-Options: DENY
reddit.comBlockiertcontent-security-policy: frame-ancestors 'self'Use embed.reddit.com for individual posts.
stackoverflow.comBlockiertX-Frame-Options: SAMEORIGIN
paypal.comBlockiertX-Frame-Options: SAMEORIGIN
apple.comBlockiertX-Frame-Options: SAMEORIGIN
microsoft.comBlockiertX-Frame-Options: SAMEORIGIN
openai.comBlockiertcontent-security-policy: frame-ancestors 'none'
chatgpt.comBlockiertcontent-security-policy: frame-ancestors 'none'
notion.soBlockiertX-Frame-Options: SAMEORIGINPublic pages can be embedded via notion.site links in some tools.
figma.comBlockiertX-Frame-Options: SAMEORIGINUse the /embed?embed_host=... URL from Share → Get embed code.
wikipedia.orgErlaubt(no framing restriction)Wikipedia allows framing.
example.comErlaubt(no framing restriction)
codepen.ioErlaubt(embeds allowed via /embed/ URLs)Use the Embed button on a pen for the canonical snippet.
vimeo.comBlockiertX-Frame-Options: SAMEORIGINUse https://player.vimeo.com/video/ID.
player.vimeo.comErlaubt(embed endpoint)
open.spotify.comBlockiertX-Frame-Options: SAMEORIGINUse https://open.spotify.com/embed/... URLs.
maps.google.comBlockiertX-Frame-Options: SAMEORIGINUse the Share → Embed a map snippet.

FAQ

Warum bleibt das iframe leer oder zeigt „Verbindung abgelehnt“?

Die Seite hat einen X-Frame-Options-Header (DENY oder SAMEORIGIN) oder eine Content-Security-Policy mit frame-ancestors gesendet, die deine Origin nicht enthält. Browser halten sich daran und zeigen stattdessen eine Fehlerseite. Den genauen Header siehst du in DevTools → Konsole oder per curl-Befehl von Iframe Viewer.

Wie teste ich, ob sich eine Website in ein iframe einbetten lässt?

Füge die URL oben in den iframe-Tester ein und klicke auf Rendern. Iframe Viewer lädt sie in einem echten iframe in der gewählten Gerätegröße und meldet, ob das Laden geklappt hat, welches Signal entschieden hat und wie lange es dauerte.

Kann Iframe Viewer den X-Frame-Options-Header direkt lesen?

Nicht allein aus dem Browser — Cross-Origin-Antwort-Header sind für JavaScript absichtlich unsichtbar. Iframe Viewer kombiniert deterministische Prüfungen (Mixed Content, Datenbank bekannter Seiten), das load-Event des Browsers und eine same-origin-Prüfung und nennt immer das entscheidende Signal. Für die endgültige Wahrheit nutze den curl-Einzeiler.

Der Tester sagt „load-Event ausgelöst“, aber ich sehe eine Fehlerseite. Was stimmt?

Beides. Chrome und Firefox lösen load auch aus, wenn sie eine Fehlerseite einsetzen; das Event allein unterscheidet also nicht zwischen Erfolg und Blockierung. Vertraue für das endgültige Urteil deinen Augen und bestätige mit curl.

Speichert oder protokolliert Iframe Viewer die getesteten URLs?

Nein. Es gibt keinen Server. Dein Verlauf liegt im localStorage des Browsers, überlebt Neuladen und lässt sich mit einem Klick löschen. Analytics zählt — falls akzeptiert — nur Seitenaufrufe und Klicks, niemals die getesteten URLs.

Was ist der Unterschied zwischen allow und sandbox?

sandbox entfernt Fähigkeiten (Skripte, Formulare, Popups, Navigation) und du gibst nur das Nötige zurück. allow ist die Permissions Policy für mächtige Features wie Kamera, Vollbild oder Zahlung. Nutze beides für fremde Inhalte, die du nicht kontrollierst.

Warum funktioniert mein Embed hier, aber nicht auf meiner Seite?

Häufige Ursachen: Deine Seite ist HTTPS, das Ziel HTTP (Mixed Content); das Ziel prüft den Referer-Header; oder die Content-Security-Policy deiner eigenen Seite hat eine frame-src-Direktive ohne das Ziel. Probiere die Referrer-Policy in den Frame-Optionen.

Ist Iframe Viewer wirklich kostenlos?

Ja — komplett kostenlos, ohne Konto, ohne Limits. Es ist eine statische Seite ohne Serverkosten, die gedeckt werden müssten.