Mam na myśli wszystkie opcje buforowania w obszarze admin / settings / performance. Często używam drush sql-sync, aby aktualizować moją wersję deweloperską na serwerze. Oczywiście serwer musi mieć włączone wszystkie pamięci podręczne.
Zastanawiam się: czy muszę odwiedzać admin / settings / performance przy każdej aktualizacji db? Czy jest do tego skrypt Drush?
Odpowiedzi:
https://drupal.org/node/797346 dla D7. W przypadku D6 https://drupal.org/project/cache_disable, ale psuje pamięć podręczną formularza. Trzeba go załatać, aby spadł do pamięci podręcznej DB w celu buforowania formularzy. I prawdopodobnie też zaktualizuj pamięć podręczną statusu.
źródło
Musisz ustawić kilka zmiennych, aby wyłączyć buforowanie w witrynie deweloperskiej ...
Jest to jeszcze łatwiejsze, jeśli masz konfigurację warunkową w pliku settings.php. Następnie możesz odświeżyć DB, a zmiany zostaną wprowadzone!
$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
... chociaż jeśli po prostu wyłączysz różne buforowanie za pomocą interfejsu administratora i wyczyścisz pamięć podręczną, możesz odłączyć motyw bez wyłączania reszty ... ponieważ skrypt ma mniejszą szansę na zmianę.
źródło
$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;
Możesz użyć pliku settings.php, aby jawnie ustawić zmienne zastępujące ustawienia bazy danych. Wartości zostaną zablokowane na wszystko, co jest ustawione w pliku i nie można go zmienić za pomocą interfejsu administratora.
Na końcu domyślnego pliku znajduje się sekcja, która rozpoczyna się:
Więc do strony Wyłącz, JS, CSS i buforowania, zestaw
cache
,preprocess_js
ipreprocess_css
wszystko'0'
Nawias zamykający dla deklaracji tablicowej jest ostatnim wierszem pliku domyślnego, po kilku kolejnych blokach komentarzy, więc pamiętaj o odznaczeniu go, a nie dodaniu nowego. Upewnij się także, że nie masz innej
$conf
deklaracji, która będzie w konflikcie.źródło
Zawsze możesz użyć pliku aliasów drush na serwerze deweloperskim i ustawić go tak, aby pomijał tabele pamięci podręcznej po uruchomieniu narzędzia sql-sync. Następujące elementy utworzyłyby aliasy dla lokalnego serwera deweloperskiego i zdalnego serwera na żywo:
Jeśli zapisałeś to w swoim katalogu domowym pod adresem:
możesz wywołać komendę sql-sync w następujący sposób:
i powinien pomijać tabele pamięci podręcznej (oczywiście wymieniłem tam tylko 2, ale można tam wstawić wszystko, nawet dodaję watchdoga).
Aby uzyskać więcej informacji na temat aliasów i wszystkich różnych opcji, sprawdź plik przykładowy w swojej instalacji drush na stronie drush / Examples / example.aliases.drushrc.php
Ostatnia uwaga dla każdego, kto próbuje użyć synchronizacji sql, miałem problemy z uwierzytelnianiem, kiedy ją uruchomiłem, więc jeśli ktoś spróbuje to zrobić i otrzyma błędy dotyczące kluczy publicznych / prywatnych, wykonaj następujące czynności:
Polecenie pushkey z drush_extras tworzy parę kluczy prywatny / publiczny i przekazuje klucz publiczny do serwera na żywo. Ostatnim poleceniem jest sprawdzenie, czy zadziałało.
źródło
Napisałem polecenie drush, które włącza / wyłącza wszystkie następujące opcje:
Przykłady i kod można znaleźć tutaj: http://ourlife01.blogspot.gr/2015/05/drush-command-to-enabledisable-cache.html
Aby więc wyłączyć wszystkie powyższe opcje, wystarczy uruchomić:
Komenda:
to to samo, co ustawienie zmiennych na wartości:
źródło
drush cache-enable min max
. Sprawdź powyższy adres URL.block cache
również ...Możesz także wyłączyć pamięć podręczną, umieszczając ją poniżej linii, umieszczając w
settings.php
plikachźródło