Fehlerseite

Fehler und cms_showpic

Mir ist aufgefallen, dass im Google Index Bilder sind, die schon lange gelöscht wurden. Dies sind allesamt Bilder, die mit ?eID=tx_cms_showpic angezeigt werden (bzw. wurden). Nun ist es so, dass das aufgerufene Skript typo3/sysext/cms/tslib/showpic.php im Falle eines nicht existierenden Bildes eine UnexpectedValueException auslöst. Diese wiederum wird von t3lib/error/class.t3lib_error_productionexceptionhandler.php behandelt.

Das sieht dann so aus:

Oops, an error occured!
Parameter Error: No file or no parameters given.
(oder Parameter Error: Wrong parameters sent.)


Das unschöne dabei ist, dass der Code 500 Internal Server Error zurückgegeben wird - und in diesem Fall nimmt es Google nicht aus dem Index. Hier findet man ca 280.000 Einträge von indizierten Fehlern in Google wenn man nach "eID=tx_cms_showpic Parameter Error" sucht. Das gefällt mir nicht.

Ich habe dazu die entsprechende Stelle im TYPO3 Sourcecode editiert und gebe den Fehlercode 404 zurück, damit das Bild aus dem Suchindex verschwindet. Nachteil: Alle Exceptions lösen nun diesen Code aus statt 500.

Workaround

Editieren von error/class.t3lib_error_productionexceptionhandler.php

public function echoExceptionWeb(Exception $exception) {
if (!headers_sent()) {
    header("HTTP/1.0 404 Not Found"); // rsys removed: header("HTTP/1.1 500 Internal Server Error");
}

Erstellt: 03/2011| Geändert: 10/2015