Zum Inhalt springen

Text m/Bild Fehler IE8 beim schließen des Popups

Erstellt am 24. August 2009 · 10 Antworten · letzte Antwort am 14. April 2010

Tags: RealURL, JavaScript & AJAX, Frage

sbad ·

Hallo,

ich bekomme unter dem Internet Explorer 8 nachfolgende Fehlermeldung in der Hinweisleiste des Browsers bei einem Popup Fenster (Text m/Bild) angezeigt:
domain/javasc#ipt:close
Wenn ich dann in das Bild klicke, um dieses zu schließen, kommt nachfolgende Fehlermeldung:
Error!
Reason: Segment "javasc" was not a keyword for a postVarSet as expected!

Die Konfiguration:
Typo3 4.2.8
Apache
RealUrl

Hat jemand ein ähnliches Problem und kann mir bitte einen Tip geben?
Vielen Dank schon einmal für die Rückantwort!
Gruß,
Stefan

sbad ·

Nachdem ich nun, den von Dir empfohlenen Thread gelesen habe, bin ich leider immer noch nicht so richtig schlau geworden!
Das bedeutet wohl, das es hierzu noch keinen richtigen Workaround gibt.
Der letzte Hinweis war ja der: "Try moving the close() from the href to a JS funtion (in a SCRIPT block)".
Funktioniert das?? Und wenn was muß ich tun?

Unbekannter Benutzer ·

Das Problem ist, dass dieses JS per GET an das Popup übergeben wird. Der IE8 hat einen völlig dämlichen Cross-Site-Scripting Filter und deaktiviert das Javascript.

Einfacher Workaround ist folgenden Header zu senden:
X-XSS-Protection: 0

sbad ·

Hallo Kitsunet,

könntest Du mir bitte noch etwas Hilfestellung geben?
Wie formuliere ich das per Typoscript?

#Anpassung IE8
page.headTag = X-XSS-Protection: 0

tbreuss ·

Die vorgeschlagene Lösung funktioniert nicht in allen TYPO3 Versionen. Zum Beispiel wird in der Version 4.1.1 der Header in der Regel gesendet, nur im eigentlichen Popup nicht. Also genau dort, wo wir den zusätzlichen Header haben müssten, fehlt dieser.

Eine bessere Lösung ist es, den zusätzlichen Header nicht über TYPO3 zu senden, sondern dem Webserver beizubringen, dass er einen solchen Zusatz-Header senden soll. Beim Apache Webserver kann man es so machen:

In der Datei .htaccess folgenden Eintrag machen:

<IfModule mod_headers.c>
Header set X-XSS-Protection: "0"
</IfModule>

Vorausgesetzt wird hier, dass .htaccess funktioniert und das Setzen von Headern in der htaccess erlaubt ist.

DrSeltsam ·

Unter http://bugs.typo3.org/view.php?id=11695 steht der entsprechende Workaround:

Modify file typo3/sysext/cms/tslib/ showpic.php

Modify function printContent() so that it looks as following

        function printContent() {
               header('X-XSS-Protection: 0'); // Disable CSS-Warning in IE8 (Typo3-Bug 11695)
               echo $this->content;
        }

Soeben mit Typo3 4.2.10 erfolgreich durchgeführt.

sbad ·

Hallo alle zusammen,

der Beitrag von DrSeltsam ist exakt die Lösung auf das Problem.
Man muß nur bei Updates der Typo3-Version diese Änderung erneut einfplegen.

Also vielen Dank noch einmal!

just2b ·
Kitsunet schrieb

Das Problem ist, dass dieses JS per GET an das Popup übergeben wird. Der IE8 hat einen völlig dämlichen Cross-Site-Scripting Filter und deaktiviert das Javascript.

ich würd den Cross-Site Scripting Schutz auch gerne in allen Browsern haben. Was dämlich ist, ist per Link JS zu übergeben.

95% aller Lücken (die ich finde) sind XSS-Issues und die können ziemlich böse enden.

Georg