Έστω ότι έχουμε μια ιστοσελίδα OpenCart με 5000 προϊόντα (είναι περίπου ο μέσος όρος για Ελληνικά καταστήματα). Αυτά τα 5000 προϊόντα θα έχουν σίγουρα από 1 εικόνα. Αυτή η εικόνα κόβεται σε μικρογραφία για την κατηγορία, μικρογραφία για τις προσφορές ή την σελίδα αναζήτησης, μικρογραφία για το καλάθι και το checkout και φυσικά μικρογραφία για την σελίδα προϊόντος, που την δείχνει σαν επιλογή κάτω από την μεγάλη εικόνα προϊόντος.
Με λίγα λόγια για κάθε 1 εικόνα, δημιουργούνται τουλάχιστον 5 αντίγραφα της στον φάκελο image/cache και αυτό γίνεται να πιο γρήγορη φόρτωση της σελίδας.
Όλα καλά μέχρι εδώ θα πείτε, το ξέρατε ή όχι αυτό, δεν έχει σημασία. Αυτό που σίγουρα δε ξέρατε οι πιο πολλοί και έχει σημασία, είναι ότι σε κάθε διαγραφή προϊόντος η φωτογραφία του προϊόντος δε διαγράφεται καθώς και τα αντίγραφα της σε όλες τις διαστάσεις που αναφέραμε παραπάνω.
Τώρα, για το πως να διαγράφεται η εικόνα αυτόματα από τον δίσκο όταν διαγράφετε το προϊόν, δεν σας έχουμε λύση σε αυτό το άρθρο, αν και υπάρχει και θα αναλύσουμε σε άλλο μας άρθρο αν βρούμε τον χρόνο, αλλά σας έχουμε λύση για το 2ο κομμάτι, που είναι τα αντίγραφα κάθε βασικής εικόνας.
Η λύση που προτείνουμε
Με βάση το άρθρο αυτό: https://support.cpanel.net/hc/en-us/articles/360052677654-How-to-clean-your-tmp-directory-with-tmpwatch
Σας προτείνουμε να κάνετε εγκατάσταση το:
tmpwatch
στον server που φιλοξενείστε. Φυσικά κάποιοι servers δεν έχουν την δυνατότητα να εγκαταστήσουν προγράμματα, που δεν χρησιμοποιούνται από άλλους, αλλά δεν χάνετε κάτι να το ρωτήσετε στον πάροχο σας.
Μόλις γίνει η παραπάνω εγκατάσταση, πηγαίνετε στο web hosting control panel σας, πχ cPanel ή Plesk ή ό,τι άλλο έχετε και πηγαίνετε στην επιλογη Cron Jobs (ή Scheduled Tasks).
Εκεί θα χρειαστεί να κάνετε ένα νέο cron job που προτείνουμε να τρέχει κάθε 1 ημέρα ή εβδομάδα ή όποτε θέλετε και θα έχει την παρακάτω μορφή (παράδειγμα):
0 0 * * * tmpwatch --mtime --all 1m /home/username/public_html/image/cache
Η παραπάνω εγγραφή θα σας διαγράψει όσα αρχεία είναι παλιότερα από 1 μήνα.
Τώρα θα πείτε εάν τα διαγράψει και χρησιμοποιούνται τι θα γίνει; Το καλό με το OpenCart είναι όταν μια cached εικόνα δεν υπάρχει την δημιουργεί ξανά όταν κάποια σελίδα προσπαθήσει να την φορτώσει και δεν υπάρχει.
Οπότε έτσι κερδίζετε ότι διαγράφετε όλα τα παλιά αρχεία εικόνων και η σελίδα σας τα δημιουργεί ξανά εάν και εφόσον χρειάζονται. Εάν είναι αρχεία από παλιές εικόνες, δε θα δημιουργηθούν ξανά γιατί δεν χρησιμοποιούνται οι βασικές εικόνες τους στα προϊόντα.
Στην παραπάνω εγγραφή, μπορείτε να αλλάξετε το 1m που σημαίνει 1 μήνα, σε απλό νούμερο που αντιπροσωπεύει ώρες ή να βάλετε d για ημέρες ή w για εβδομάδες.
Ελπίζουμε ο παραπάνω απλός οδηγός να σας βοηθήσει και να σας γλυτώσει από τον πονοκέφαλο των παλιών αρχείων και μεγάλου μεγέθους στο δίσκο της σελίδας σας.
