Verfasst am: Sa Dez 30, 2006 2:53 pm Titel: Google-SEO optimierte URL für Nuke HTML URLs
Hej
Wer Probleme mit der Anleitung von Dominik (http://www.phpnuke.gratis-cms.com/Tutorial-ModRewrite.rtf) hat, dass nach der Modifikation im MS Internet Explorer eine weiße Seite angezeigt wird, aber es mit Opera und Firefox funktioniert, habe ich eine Lösung gefunden.
Die genaue Ursache für das Problem kann ich nicht erklären, aber es scheint an der Serverconfig zu liegen.
Ursache = erweiterter Auslöser scheint aber der doppelte Aufruf der Funktion ob_end_clean(); zu sein. Diese Funktion wird sowohl in der mainfile.php als auch in der footer.php aufgerufen.
Hier die Zeilen in der mainfile.php
Code:
if ($phpver >= '4.0.4pl1' && isset($_SERVER['HTTP_USER_AGENT']) && strstr($_SERVER['HTTP_USER_AGENT'],'compatible')) {
if (extension_loaded('zlib')) {
@ob_end_clean();
ob_start('ob_gzhandler');
}
}
Hier die Zeilen in der footer.php
Code:
$temp=ob_get_contents();
ob_end_clean();
replace_for_mod_rewrite($temp);
echo $temp;
die();
Scheinbar löscht die Funktion ob_end_clean() in der mainfile.php den URL bevor er ausgegeben wird. Dies aber nur wenn es nicht der MS IE ist. (abfrage: && strstr($_SERVER['HTTP_USER_AGENT'],'compatible'))
Wenn man nun aber die Funktion ob_end_clean(); durch die Funktion ob_end_flush(); in der mainfile.php ersetzt ist der Fehler behoben.
Geänderte Zeilen in der mainfile.php
Code:
if ($phpver >= '4.0.4pl1' && isset($_SERVER['HTTP_USER_AGENT']) && strstr($_SERVER['HTTP_USER_AGENT'],'compatible')) {
if (extension_loaded('zlib')) {
@ob_end_flush();
ob_start('ob_gzhandler');
}
}
Somit sollte auf den meisten Servern da Problem behoben sein
Hier der unterschied zwischen dein beiden Funktionen lt. PHP Beschreibung.
ob_end_clean -- Bereinigt (löscht) den Ausgabe-Puffer und deaktiviert die Ausgabe-Pufferung
ob_end_flush -- Leert (schickt/sendet) den Ausgabe-Puffer und deaktiviert die Ausgabe-Pufferung
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.