Το ερώτημα είναι αρκετά σαφές.
php artisan cache:clear
Υπάρχει κάποια λύση για την εκκαθάριση της προσωρινής μνήμης όπως παραπάνω που χρησιμοποιούμε στο CLI. Χρησιμοποιώ μια δημοφιλή υπηρεσία shared hosting, αλλά σύμφωνα με το πρόγραμμά μου, δεν έχω πρόσβαση στον πίνακα ελέγχου.
Θέλω να καθαρίσω την προσωρινή μνήμη προβολής.
Είδα μια ερώτηση σχεδόν ίδια με αυτή, αλλά δεν με βοηθάει.
Μπορείτε να καλέσετε μια εντολή Artisan εκτός του CLI.
Route::get('/clear-cache', function() {
$exitCode = Artisan::call('cache:clear');
// return what you want
});
Μπορείτε να δείτε το επίσημο έγγραφο εδώ http://laravel.com/docs/5.0/artisan#calling-commands-outside-of-cli
Επικαιροποίηση
Δεν υπάρχει τρόπος διαγραφής της προσωρινής μνήμης προβολής. Ούτε το php artisan cache:clear
το κάνει αυτό.
Αν θέλετε πραγματικά να διαγράψετε την προσωρινή μνήμη προβολής, νομίζω ότι πρέπει να γράψετε τη δική σας εντολή artisan
και να την καλέσετε όπως είπα προηγουμένως, ή να παραλείψετε εντελώς το μονοπάτι artisan
και να διαγράψετε την προσωρινή μνήμη προβολής σε κάποια κλάση που καλείτε από έναν ελεγκτή ή μια διαδρομή.
Αλλά, η πραγματική μου ερώτηση είναι αν χρειάζεται πραγματικά να καθαρίσετε την προσωρινή μνήμη προβολής; Σε ένα έργο που δουλεύω τώρα, έχω σχεδόν 100 προσωρινά αποθηκευμένες προβολές και ζυγίζουν λιγότερο από 1 Mb, ενώ ο κατάλογος vendor
μου είναι > 40 Mb. Δεν νομίζω ότι η προσωρινή μνήμη προβολής αποτελεί πραγματική συμφόρηση στη χρήση του δίσκου και δεν είχα ποτέ πραγματική ανάγκη να την καθαρίσω.
Όσον αφορά την κρυφή μνήμης εφαρμογών, αποθηκεύεται στον κατάλογο storage/framework/cache
, αλλά μόνο αν έχετε ρυθμίσει τον οδηγό file
στο config/cache.php
. Μπορείτε να επιλέξετε πολλούς διαφορετικούς οδηγούς, όπως Redis ή Memcached, για να βελτιώσετε τις επιδόσεις σε σχέση με μια κρυφή μνήμη που βασίζεται σε αρχεία.
Μπορείτε να συνδεθείτε μέσω FTP και να καθαρίσετε το φάκελο storage\framework\views
για το laravel 5
ή app\storage\views
για το laravel 4
.