Je veux dire toutes les options de mise en cache sous admin / settings / performance. J'utilise fréquemment drush sql-sync pour garder ma copie de développement à jour avec le serveur. Cependant, tous les caches doivent être activés sur le serveur, évidemment.
Je me demande donc: dois-je visiter admin / settings / performance chaque fois que je mets à jour ma base de données? Ou existe-t-il un script Drush pour cela?
Réponses:
https://drupal.org/node/797346 pour D7. Pour D6, https://drupal.org/project/cache_disable mais cela casse le cache du formulaire. Il faut le patcher pour tomber dans le cache DB pour la mise en cache du formulaire. Et probablement mettre à jour le cache d'état également.
la source
Vous devez définir plusieurs variables pour désactiver la mise en cache sur votre site de développement ...
C'est encore plus facile si vous avez une configuration conditionnelle dans votre fichier settings.php. Ensuite, vous pouvez actualiser la base de données et les modifications seront conservées!
$conf['cache'] = 0; // Page cache $conf['page_cache_maximum_age'] = 0; // External cache TTL $conf['preprocess_css'] = FALSE; // Optimize css $conf['preprocess_js'] = FALSE; // Optimize javascript $conf['views_skip_cache'] = TRUE; // Views caching
... bien que si vous désactivez simplement la mise en cache via l'interface utilisateur d'administration et videz le cache une fois, vous pouvez supprimer le thème sans désactiver le reste ... car le script est moins susceptible de changer.
la source
$conf = array( 'cache' => FALSE, //page cache 'block_cache' => FALSE, //block cache 'preprocess_css' => FALSE, //optimize css 'preprocess_js' => FALSE, //optimize javascript 'environment' => 'development' );
$conf['cache'] = 0; $conf['page_cache_maximum_age'] = 0; $conf['block_cache'] = FALSE; $conf['preprocess_css'] = FALSE; $conf['preprocess_js'] = FALSE; $conf['views_skip_cache'] = TRUE;
Vous pouvez utiliser votre fichier settings.php pour définir explicitement des variables pour remplacer vos paramètres de base de données. Les valeurs seront verrouillées sur tout ce qui est défini dans le fichier et ne peuvent pas être modifiées via l'interface d'administration.
À la fin du fichier par défaut se trouve une section qui commence:
Donc , à la page désactiver, JS, et la mise en cache de CSS, ensemble
cache
,preprocess_js
etpreprocess_css
tout'0'
La parenthèse fermante pour la déclaration de tableau est la dernière ligne du fichier par défaut, après quelques blocs de commentaires supplémentaires, alors assurez-vous de la décommenter là plutôt que d'en ajouter un nouveau. Assurez-vous également que vous n'avez pas d'autre
$conf
déclaration en conflit.la source
Vous pouvez toujours utiliser un fichier d'alias drush sur votre serveur de développement et le configurer pour ignorer les tables de cache lorsque vous exécutez sql-sync. Les éléments suivants créeraient des alias pour votre serveur de développement local et votre serveur en direct distant:
Si vous l'avez enregistré dans votre répertoire personnel à:
alors vous pouvez appeler votre commande sql-sync comme ceci:
et il devrait ignorer les tables de cache (évidemment, je n'en ai répertorié que 2, mais vous pouvez y mettre n'importe quoi, j'ajoute même un chien de garde).
Pour plus d'informations sur les alias et toutes les différentes options, consultez l'exemple de fichier dans votre installation drush à drush / examples / example.aliases.drushrc.php
Comme dernière note pour quiconque essaye d'utiliser sql-sync, j'ai eu des problèmes d'authentification lorsque je l'ai exécuté pour la première fois, donc si quelqu'un tente cela et obtient des erreurs sur les clés publiques / privées, procédez comme suit:
La commande pushkey de drush_extras crée une paire de clés privée / publique et envoie la clé publique au serveur en direct. La dernière commande consiste simplement à vérifier que cela fonctionne.
la source
J'ai écrit une commande drush qui active / désactive toutes les options suivantes:
Des exemples et du code peuvent être trouvés ici: http://ourlife01.blogspot.gr/2015/05/drush-command-to-enabledisable-cache.html
Donc, pour désactiver toutes les options ci-dessus, il vous suffit d'exécuter:
La commande:
revient à définir les variables sur les valeurs:
la source
drush cache-enable min max
. Vérifiez l'URL ci-dessus.block cache
également ..Vous pouvez également désactiver le cache par la ligne ci-dessous, le mettre dans des
settings.php
fichiersla source