it-swarm.com.de

Löschen Sie den Cache, ohne sich anzumelden

Ich habe in meiner page.tpl.php-Datei eine if-Anweisung zum Inhalts-Render-PHP hinzugefügt. Das einzige Problem ist, dass ich einen Fehler gemacht und versehentlich verhindert habe, dass Inhalte auf einer Seite gerendert werden. Ich habe den Cache geleert und mich abgemeldet, um ihn zu testen. Als ich meinen Fehler erkannte, habe ich die Vorlagendatei korrigiert. Aber jetzt kann ich mich nicht wieder anmelden, um den Cache wieder zu leeren, da meine Site keinen Inhalt rendert und daher das Anmeldefeld nicht rendert.

Kann mir jemand eine Möglichkeit in Drupal 7) geben, sich entweder ohne das Anmeldefeld anzumelden (wie das Anmeldefeld separat zum Inhalt zu rendern) oder den Cache zu leeren?

10
JamiePatt

Die beste Lösung, die ich am Ende gefunden habe, war es, es über phpmyadmin zu tun. Ich habe mich angemeldet und alle Tabellen geleert, die am Anfang ihres Namens "Cache" hatten. Einfach, wenn Sie nicht in Drush arbeiten.

6
JamiePatt

ich. Wenn Sie drush installiert haben (http://drupal.org/project/drush) - wenn Sie es nicht haben, denken Sie das nächste Mal darüber nach :), öffnen Sie die Konsole (WIN + R) in Windows oder Strg + Alt + T in Linux zeigt auf Ihren Site-Ordner (zB cd /www/mydrupalsite/ und Typ:

 $ drush cc all

von der Kommandozeile.

ii. Eine andere Methode besteht darin, sich bei Ihrem phpmyadmin anzumelden, Ihre cache_-Tabellen auszuwählen und sie zu leeren.

12

Zusätzlich zu den oben genannten Optionen können Sie als letzten Versuch die Funktion drupal_flush_all_caches() aufrufen, um alle Caches zu löschen.

Sie können dies tun, indem Sie den folgenden Code in eine PHP-Datei in Ihrem Dokumentenstamm einfügen und ihn mit einem Browser aufrufen:

define('DRUPAL_ROOT', getcwd());
require_once DRUPAL_ROOT . '/includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
drupal_flush_all_caches();

Ich habe diesen Code nicht getestet und stelle sicher, dass er entfernt wird, nachdem Sie Ihre Caches geleert haben.

5
Phizes

Sie können einstellen

$update_free_access = TRUE;

in settings.php (um Zeile 226) und navigieren Sie zu /update.php. Dadurch wird der Cache geleert.

2
mymwbg
delete from cache where cid <> '';
delete from cache_block where cid <> '';
delete from cache_bootstrap where cid <> '';
delete from cache_field where cid <> '';
delete from cache_filter where cid <> '';
delete from cache_path where cid <> '';
delete from cache_libraries where cid <> '';
delete from cache_image where cid <> '';
delete from cache_page where cid <> '';
delete from cache_token where cid <> '';
delete from cache_update where cid <> '';
delete from cache_views where cid <> '';
delete from cache_views_data where cid <> '';
0

Sie können den Cache Drupal] löschen, indem Sie den folgenden Befehl entweder in der Windows-Befehlskonsole oder in einer .bat-Datei (oder in der Linux-Konsole) ausführen:

php -r "define ('DRUPAL_ROOT', '../web'); chdir (DRUPAL_ROOT); define ('MAINTENANCE_MODE', 'update'); global $ _SERVER; $ _SERVER ['REMOTE_ADDR'] = '127.0.0.1 '; require_once DRUPAL_ROOT.'/includes/bootstrap.inc '; drupal_bootstrap (DRUPAL_BOOTSTRAP_FULL); drupal_flush_all_caches (); "

Stellen Sie einfach sicher, dass DRUPAL_ROOT im Code auf das Verzeichnis Drupal) verweist.

0