Αλλαγή ονομασίας φακέλου admin & vQmod [MOD]
Posted: Thu Jan 17, 2013 2:18 am
Όποιος χρησιμοποιεί vQmod και επιθυμεί για λόγους καλύτερης ασφάλειας να αλλάξει την αρχική ονομασία του φακέλου admin σε κάτι διαφορετικό και λιγότερο προβλέψιμο πχ diaxirisi101, είναι αναγκασμένος να κάνει search and replace τη λέξη “admin” με την αλλαγμένη ονομασία σε κάθε καινούργιο αρχείο vQmod που προσθέτει ...
Αυτό είναι αφενός χρονοβόρο και αφετέρου ενδέχεται να δημιουργήσει προβλήματα αν για παράδειγμα γίνει κατά λάθος replace σε μία λέξη admin που δεν ανήκει σε path αρχείου, άλλα είναι μέσα στο κώδικα που τροποποιεί το vQmod.
Με το παρακάτω πανεύκολο mod μπορούμε να αλλάξουμε την ονομασία του φακέλου admin χωρίς να χρειαστεί να πειράξουμε τα αρχεία xml των vQmods που προσθέτουμε. Οι αλλαγές θα πραγματοποιούνται αυτόματα από το ίδιο το vQmod και θα καταχωρούνται στο vqmod.cache. Αυτό έχει δύο πλεονεκτήματα.
1. Γλιτώνουμε χρόνο και πιθανά σφάλματα κατά το replace.
2. Τα αρχεία xml παραμένουν ανέπαφα, έτσι διατηρούν τη φορητότητα τους από μία εγκατάσταση Opencart σε μία άλλη.
Τι πρέπει να κάνουμε:
1. Αν δεν το έχουμε κάνει ήδη, εγκαθιστούμε κανονικά το τελευταίο vQmod v2.2.2 χωρίς να αλλάξουμε ακόμη την ονομασία του φακέλου admin.
2. Στο αρχείο config.php όπου υπάρχει με κόκκινα γράμματα admin, το αλλάζουμε με τη νέα ονομασία που θέλουμε να έχει ο φάκελος admin.
define('HTTP_ADMIN', 'http://www.mysite.gr/admin/');
3. Στο αρχείο admin/config.php κάνουμε ακριβώς το ίδιο και στις ακόλουθες γραμμές
define('HTTP_SERVER', 'http://www.mysite.gr/admin/');
define('HTTPS_SERVER', 'http://www.mysite.gr/admin/');
define('DIR_APPLICATION', '/home/myusername/public_html/mysite/admin/');
define('DIR_LANGUAGE', '/home/myusername/public_html/mysite/admin/language/');
define('DIR_TEMPLATE', '/home/myusername/public_html/mysite/admin/view/template/');
4. Μετονομάζουμε και το φάκελο admin στη νέα ονομασία
5. Στο αρχείο vqmod/vqmod.php αντικαθιστούμε τη γραμμή 612
Με αυτή:
(Αντικαθιστούμε τη λέξη nea-onomasia με τη νέα ονομασία του φακέλου admin.)
6. Διαγράφουμε τα αρχεία του φακέλου vqmod/vqcache
7. Διαγράφουμε το αρχείο vqmod/mods.cache (οι αλλαγές των paths με τη νέα ονομασία του admin θα καταχωρηθούν μόνο εδώ!)
Πλέον μπορούμε να κάνουμε login στο admin χρησιμοποιόντας στο URL τη νέα ονομασία
πχ http://www.mydomain.gr/diaxiristis101/
... και να προσθέτουμε νέα vqmods χωρίς να κάνουμε καμία τροποποίηση στα αρχεία xml
Αυτό είναι αφενός χρονοβόρο και αφετέρου ενδέχεται να δημιουργήσει προβλήματα αν για παράδειγμα γίνει κατά λάθος replace σε μία λέξη admin που δεν ανήκει σε path αρχείου, άλλα είναι μέσα στο κώδικα που τροποποιεί το vQmod.
Με το παρακάτω πανεύκολο mod μπορούμε να αλλάξουμε την ονομασία του φακέλου admin χωρίς να χρειαστεί να πειράξουμε τα αρχεία xml των vQmods που προσθέτουμε. Οι αλλαγές θα πραγματοποιούνται αυτόματα από το ίδιο το vQmod και θα καταχωρούνται στο vqmod.cache. Αυτό έχει δύο πλεονεκτήματα.
1. Γλιτώνουμε χρόνο και πιθανά σφάλματα κατά το replace.
2. Τα αρχεία xml παραμένουν ανέπαφα, έτσι διατηρούν τη φορητότητα τους από μία εγκατάσταση Opencart σε μία άλλη.
Τι πρέπει να κάνουμε:
1. Αν δεν το έχουμε κάνει ήδη, εγκαθιστούμε κανονικά το τελευταίο vQmod v2.2.2 χωρίς να αλλάξουμε ακόμη την ονομασία του φακέλου admin.
2. Στο αρχείο config.php όπου υπάρχει με κόκκινα γράμματα admin, το αλλάζουμε με τη νέα ονομασία που θέλουμε να έχει ο φάκελος admin.
define('HTTP_ADMIN', 'http://www.mysite.gr/admin/');
3. Στο αρχείο admin/config.php κάνουμε ακριβώς το ίδιο και στις ακόλουθες γραμμές
define('HTTP_SERVER', 'http://www.mysite.gr/admin/');
define('HTTPS_SERVER', 'http://www.mysite.gr/admin/');
define('DIR_APPLICATION', '/home/myusername/public_html/mysite/admin/');
define('DIR_LANGUAGE', '/home/myusername/public_html/mysite/admin/language/');
define('DIR_TEMPLATE', '/home/myusername/public_html/mysite/admin/view/template/');
4. Μετονομάζουμε και το φάκελο admin στη νέα ονομασία
5. Στο αρχείο vqmod/vqmod.php αντικαθιστούμε τη γραμμή 612
Code: Select all
$fileToMod = $file->getAttribute('name');
Code: Select all
$fileToMod = preg_replace('/admin/', 'nea-onomasia', $file->getAttribute('name'), 1);
6. Διαγράφουμε τα αρχεία του φακέλου vqmod/vqcache
7. Διαγράφουμε το αρχείο vqmod/mods.cache (οι αλλαγές των paths με τη νέα ονομασία του admin θα καταχωρηθούν μόνο εδώ!)
Πλέον μπορούμε να κάνουμε login στο admin χρησιμοποιόντας στο URL τη νέα ονομασία
πχ http://www.mydomain.gr/diaxiristis101/
... και να προσθέτουμε νέα vqmods χωρίς να κάνουμε καμία τροποποίηση στα αρχεία xml
