Maksud saya semua opsi caching di bawah admin / pengaturan / kinerja. Saya sering menggunakan drush sql-sync untuk menjaga agar salinan pengembangan saya tetap mutakhir dengan server. Namun, server harus mengaktifkan semua cache, jelas.
Jadi saya bertanya-tanya: haruskah saya mengunjungi admin / pengaturan / kinerja setiap kali saya memperbarui db? Atau adakah naskah Drush untuk itu?
Jawaban:
https://drupal.org/node/797346 untuk D7. Untuk D6, https://drupal.org/project/cache_disable tetapi itu memecah cache form. Orang perlu menambalnya untuk jatuh ke cache DB untuk caching bentuk. Dan mungkin memperbarui cache status juga.
sumber
Anda perlu mengatur beberapa variabel untuk mematikan caching di situs dev Anda ...
Ini bahkan lebih mudah jika Anda memiliki konfigurasi bersyarat di file settings.php Anda. Kemudian Anda dapat menyegarkan DB dan perubahan akan tetap!
$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
... meskipun jika Anda hanya mematikan berbagai caching melalui admin UI dan menghapus cache sekali maka Anda dapat tema tanpa mematikan sisanya ... karena skrip cenderung berubah.
sumber
$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;
Anda dapat menggunakan file settings.php Anda untuk secara eksplisit mengatur variabel untuk mengesampingkan pengaturan database Anda. Nilai-nilai akan dikunci untuk apa pun yang diatur dalam file, dan tidak dapat diubah melalui antarmuka admin.
Pada akhir file default adalah bagian yang dimulai:
Jadi ke halaman menonaktifkan, JS, dan CSS caching, set
cache
,preprocess_js
danpreprocess_css
semua untuk'0'
Tanda kurung penutup untuk deklarasi array adalah baris terakhir dari file default, setelah beberapa blok komentar lagi, jadi pastikan untuk menghapus komentar di sana daripada menambahkan yang baru. Pastikan juga Anda tidak memiliki
$conf
deklarasi lain yang akan bertentangan.sumber
Anda selalu dapat menggunakan file alias drush di server dev Anda dan mengaturnya untuk melewati tabel cache ketika Anda menjalankan sql-sync. Berikut ini akan membuat alias untuk server dev lokal Anda dan server live jarak jauh Anda:
Jika Anda menyimpannya di direktori home Anda di:
maka Anda dapat memanggil perintah sql-sync Anda seperti:
dan itu harus melewati tabel cache (jelas saya hanya mendaftar 2 di sana, tetapi Anda bisa meletakkan apa pun di sana, saya bahkan menambahkan pengawas di).
Untuk info lebih lanjut tentang alias dan semua berbagai opsi, lihat file contoh di drush install di drush / example / example.aliases.drushrc.php
Sebagai catatan terakhir bagi siapa saja yang mencoba menggunakan sql-sync, saya memiliki masalah otentikasi ketika pertama kali menjalankannya, jadi jika seseorang mencoba ini dan mendapatkan kesalahan tentang kunci publik / pribadi maka lakukan hal berikut:
Perintah pushkey dari drush_extras membuat pasangan kunci privat / publik dan mendorong kunci publik ke server langsung. Perintah terakhir hanya untuk memeriksa apakah itu berhasil.
sumber
Saya telah menulis perintah drush yang mengaktifkan / menonaktifkan semua opsi berikut:
Contoh dan kode dapat ditemukan di sini: http://ourlife01.blogspot.gr/2015/05/drush-command-to-enabledisable-cache.html
Jadi untuk menonaktifkan semua opsi di atas, Anda hanya perlu menjalankan:
Perintah:
sama dengan mengatur variabel ke nilai:
sumber
drush cache-enable min max
. Periksa URL di atas.block cache
juga ..Anda juga dapat menonaktifkan cache dengan baris di bawah ini, memasukkannya ke dalam
settings.php
filesumber