Zum Inhalt springen

Clear Cache [script]

Erstellt am 2. April 2008 · Noch keine Antworten

Tags: Frage

Gunah ·

moin

da ich in letzter Zeit in einem Typo3 immer wieder den Cache leeren musste und die temp Daten löschen musste habe ich mir folgendes kleines Script geschrieben:

es kommt einfach in das root verzeichnis von Typo3

es leert den Datenbank Cache und den typo3temp ordner, und am ende Optimiert es die gesammten DB-Tabellen in Typo3
Ausgeführt werden kann es nur, wenn diese Datei existiert (wie beim 123 Installer) typo3conf/ENABLE_INSTALL_TOOL

<?php
/*
build by Mathis Klooss
Licence: GPL
Only for UNIX / LINUX
*/

/*for global register on*/
$typo_db_host = '';
$typo_db_username = '';
$typo_db_password = '';
$typo_db = '';
$co['mysql'] = '';
/*^^ Escape bei global_register on alle Variablen!*/

if(!file_exists('typo3conf/ENABLE_INSTALL_TOOL')) die ('keine Berechtigung für diesen Bereich!'); // Ueberprueft ob es gestartet werden darf oder nicht!
require('typo3conf/localconf.php');
/*MySQL Verbindung mit Typo3 Daten*/
$co['mysql'] = mysql_connect($typo_db_host,$typo_db_username,$typo_db_password) or die('Konnte keine Verbindung zum Server aufbauen!');
mysql_select_db($typo_db,$co['mysql']) or die('Konnte keine Verbindung zur Datenbank aufbauen!');

echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">';
echo '<html xmlns="http://www.w3.org/1999/xhtml">';
echo '<head>';
echo '<title>Cache/Temp Clear</title>';
echo '</head>';
echo '<body>';

@exec('rm -rf typo3temp/*'); // Loescht den Inhalt des typo3temp ordners komplett

echo 'Der Ordner typo3temp/ wurde geleert';
echo '<br />';
echo '<br />';

mysql_query('TRUNCATE `cache_extensions`;');
mysql_query('TRUNCATE `cache_hash`;');
mysql_query('TRUNCATE `cache_imagesizes`;');
mysql_query('TRUNCATE `cache_md5params`;');
mysql_query('TRUNCATE `cache_pages`;');
mysql_query('TRUNCATE `cache_pagesection`;');
mysql_query('TRUNCATE `cache_typo3temp_log`;');

echo 'Der Typo3-DB Cache wurde geleert';
echo '<br />';
echo '<br />';

$result = mysql_list_tables($typo_db,$co['mysql']);
while ($row = mysql_fetch_row($result)) {
    mysql_query('OPTIMIZE TABLE '.$row['0'].';');
}

echo 'Die Typo3 Tabellen wurden Optimiert ';
mysql_close($co['mysql']);

echo '</body>';
echo '</html>';
?>