Σύνδεση με εξυπηρετητή prometheus και εύρεση στοιχείων
Κατ' αρχάς θα πρέπει να συνδεθείτε στον server prometheus.dmst.aueb.gr μέσω PUTTY
Στην κονσόλα που ανοίγει γράφεται την εντολή oscommerce install και πατάτε
Στα παρακάτω παραδείγματα ο χρήστης sgrig έχει συνδεθεί στον prometheus και…
sgrig@prometheus:~> oscommerce install Store Id default OpenSource Commerce v2.3.3.4! Done: You should be able to start setting your OSCommerce Shop on http://prometheus.dmst.aueb.gr/~sgrig/oscommerce_default/catalog ATTENTION: Dont forget to run oscommerce secure after setting up your shop! sgrig@prometheus:~>
Με αυτόν τον τρόπο ξεπακεταρίστηκε το πακέτο της εφαρμογής του OsCommerce στον φάκελο public_html/oscommerce_default.
Επιπλέον πληροφορίες
|
Σημειώστε το URL http://prometheus.dmst.aueb.gr/~sgrig/oscommerce_default/catalog στο οποίο μπορείτε να συνεχίσετε την παραμετροποίηση της εφαρμογή σας αφού πρώτα προμηθευτείτε και βάση δεδομένων |
H εφαρμογή απαιτεί μια βάση δεδομένων Mysql την οποία και φτιαχνουμε πάλι με το ίδιο εργαλείο εργαλείο Στο παρακάτω παράδειγμα ο χρήστης sgrig φτιάχνει μια βάση δεδομένων με διακριτικό db1.
sgrig@prometheus:~> makemydb createdb db1 Executing for Username :sgrig create database sgrig_db1; grant all privileges on sgrig_db1.* to sgrig; Please review the sql statements above. Do you want me to execute them? [y/N]y All Sql queries executed succesfully
Το όνομα της βάσης που δημιουργήθηκε είναι sgrig_db1.
Επιπλέον πληροφορίες
|
Αυτό το στάδιο το εκτελούμε μόνο μια φορά για να εγγραφτούμε στα μητρώα χρηστων mysql και να ορίσουμε συνθηματικό. Χρησιμοποιούμε το εργαλείο makemydb .
sgrig@prometheus:~> makemydb setpasswd gheu29883 Executing for Username :sgrig set password for sgrig=PASSWORD('gheu29883'); Please review the sql statements above. Do you want me to execute them? [y/N]y All Sql queries executed succesfully sgrig@prometheus:~>
Επιπλέον πληροφορίες
|
Επισκέπτόμαστε την εφαρμογή μας στο URL που είχαμε σημειώσει στο 1ο στάδιο στο δικό μας παράδειγμα http://prometheus.dmst.aueb.gr/~sgrig/oscommerce_default/catalog και αρχίζουμε την παραμετροποίηση της Στην διαδικασία θα χρειαστεί να εισάγετε το όνομα χρήστη της βάσης που είναι ίδιο με το όνομα χρήστη σας στο εργαστήριο (sgrig στο παραδειγμά μας), τα συνθηματικά του χρήστη βάσης που επιλέξατε και το όνομα της βάσης που θέλετε να συνδεθεί η εφαρμογή που προκύπτει από τον κανόνα username_dbname με το dbname που επιλέξατε στο στάδιο 3.
Μετά το τέλος της παραμετροποίησης και αφού κανουμε την πρωτη μας επιτυχή επίσκεψη στο μαγαζί και ώς πελάτης αλλά και ώς διαχειριστής, οφείλουμε να επιστρέψουμε στην κονσόλα του unix και να ασφαλίσουμε το κατάστημά μας ειδάλλως οποισδήποτε μπορεί πανεύκολα να μας το καταστρέψει.
sgrig@prometheus:~/public_html> oscommerce secure Store Id default ------------------------------------------------------- Securing OS commerce Setup mode of βcatalog/includes/configure.phpβ changed from 0777 (rwxrwxrwx) to 0644 (rw-r--r--) mode of βcatalog/admin/includes/configure.phpβ changed from 0777 (rwxrwxrwx) to 0644 (rw-r--r--) >>> Done: Secured installation.
Οποτεδήποτε χρείαζεται να “ανεβάσετε κάποιο αρχείο στην εφαρμογή η συνιστώμενη διαδικασία είναι να συνδεθείτε στον εξυπηρετητή μέσω WinSCP και να το κάνετε με ασφαλή τρόπο.
Εναλλακτικά, μπορείτε να επιτρέψετε στην εφαρμογή να γράφει από μόνη της σε κάποιους φακέλους και να κάνετε upload μεσω web browser. Στο εργαλείο διαχείρισης της εφαρμογής στην περιοχή Tools > Permissions υπάρχει ενδεικτικός κατάλογος σε ποιος φακέλους μπορείτε να επιτρέψετε το upload. Θεωρείται όμως τρύπα ασφαλείας.
Για να επιτρέψετε στην εφαρμογή να γραψει σε κάποιον φάκελο αρκεί να μπείτε με putty στον εξυπηρετητή να πλοηγηθείτε μέσω cd public_html/oscommerce_default/….. στον φάκελο που σας ενδιαφέρει και να χρησιμοποιήσετε τις ακόλουθε εντολές
Παροχή άδειας εγγραφής στην εφαρμογή στον φάκελο που είμαστε
sgrig@prometheus:~>chmod o+w .
Αναδρομική παροχή άδειας στον φακελο πχ. media που βρίσκεται στον φακελο που είμαστε και σε ολους τους υποφακέλους του. (Προσοχη στην χρήση του διακόπτη -R γιατι αν εφαρμοστει απροσεκτα μπορει να παραποιήσει άδειες πρόσβασης σε ολο το καταστημα και να το καταστρεψει)
sgrig@prometheus:~> chmod -R o+w media
Ανάκληση άδειας
sgrig@prometheus:~>chmod o-w .
Θεωρητικά είστε ελεύθεροι να εγκαταστήσετε οποιαδήποτε άλλη πλατφόρμα ηλεκτρονικού εμπορίου γραμμένη σε γλωσσα php. Θα χρειαστείτε πάλι μια βάση δεδομένων που θα προμηθευτείτε με τον τρόπο που περιγράφεται παραπάνω για τον oscommerce. Επιπλέον θα πρέπει κατεβάσετε το πακέτο της πλατφόρμας απο την ιστοσελίδα του στον υπολογιστή σας , να το μεταφορτώσετε στον prometheus με την χρήση του WinSCP και μετά μπαινοντας στην γραμμή εντολών με putty να το ξεπακετάρετε μέσα στον φάκελο public_html και να ακολουθήσετε οδηγίες εγκατάστασης απο την ίδια την πλατφόρμα.Εναλλακτικά μπορείτε να βρείτε ευκολα τα συμβατά πακέτα με τον προμηθέα για τις πλατφόρμες oscommerce magento prestashop στον φάκελο /usr/webapps. Δικές σας πλατφόρμες που θα κατεβάσετε θα πρέπει να ειναι συμβατές με php 5.4 . Οι παραπάνω βοηθητικοί συνδεσμοι παρέχουν πληροφορίες για χρησιμοποίηση εντολών σε περιβάλλον UNIX. Εαν χρειστείτε επιπλέον να τροποποιήσετε κάποιο αρχείο όντας συνδεδεμένοι με το Putty τότε ένας φιλικός editor είναι ο nano και μπορείτε να επεξεργαστείτε ενα αρχείο απλά γραφοντας nano filename όπου filename το όνομα του αρχείου που θέλετε να τροποποιήσετε. Μέσα στον nano υπάρχει μενου με τις λειτουργίες πχ ^Χ σημαίνει πατάω CONTROL+X και παω στο μενου εξόδου απο τον editor.
Αντιστοιχα ένας πιο πολυπλοκος αλλα ολοκληρωμένος editor είναι ο vim. Χρείαζεστε όμως εξοικείωση με αυτόν και να διαβάσετε ένα απλό tutorial όπως πχ Vim Tutorial
Μπορείτε να παρακολουθήσετε μηνύματα λάθους που εκδίδονται απο τον εξυπηρετητή για την εφαρμογή σας πληκτρολογώντας την ακόλουθη εντολή στο Putty και να ψαξετε για πληροφορίες που προκαλούν την δυσλειτουργία. Στο παρακάτω παράδειγμα εκτυπωνονται μυνήματα λαθους και μηνύματα λειτουργίας της εφαρμογής για τον χρήστη sgrig αντίστοιχα.
sgrig@prometheus:~/public_html> grep sgrig /var/log/apache2/error_log .................. [Wed Apr 22 18:40:55.233098 2015] [php5:error] [pid 12632] [client 2.84.150.209:50893] PHP Warning: mysqli_connect(): (HY000/1045): Access denied for user ''@'localhost' (using password: NO) in /home/sgrig/public_html/oscommerce_default/catalog/includes/functions/database.php on line 20, referer: http://wiki.dmst.aueb.gr/doku.php?id=e-commerce [Wed Apr 22 18:41:00.850704 2015] [php5:error] [pid 12900] [client 2.84.150.209:50896] PHP Warning: mysqli_connect(): (HY000/1045): Access denied for user ''@'localhost' (using password: NO) in /home/sgrig/public_html/oscommerce_default/catalog/includes/functions/database.php on line 20, referer:
grep sgrig /var/log/apache2/access_log ......................... sgrig@prometheus:~/public_html> grep sgrig /var/log/apache2/access_log 2.84.150.209 - - [22/Apr/2015:18:40:55 +0300] "GET /~sgrig/oscommerce_default/catalog HTTP/1.1" 301 365 "http://wiki.dmst.aueb.gr/doku.php?id=e-commerce" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36" 2.84.150.209 - - [22/Apr/2015:18:40:55 +0300] "GET /~sgrig/oscommerce_default/catalog HTTP/1.1" 301 365 "http://wiki.dmst.aueb.gr/doku.php?id=e-commerce" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36" 2.84.150.209 - - [22/Apr/2015:18:40:55 +0300] "GET /~sgrig/oscommerce_default/catalog/ HTTP/1.1" 302 37 "http://wiki.dmst.aueb.gr/doku.php?id=e-commerce" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36" 2.84.150.209 - - [22/Apr/2015:18:40:55 +0300] "GET /~sgrig/oscommerce_default/catalog/ HTTP/1.1" 302 37 "http://wiki.dmst.aueb.gr/doku.php?id=e-commerce" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36" 2.84.150.209 - - [22/Apr/2015:18:40:55 +0300] "GET /~sgrig/oscommerce_default/catalog/install/index.php HTTP/1.1" 200 5380 "http://wiki.dmst.aueb.gr/doku.php?id=e-commerce" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36" 2.84.150.209 - - [22/Apr/2015:18:40:55 +0300] "GET /~sgrig/oscommerce_default/catalog/install/index.php HTTP/1.1" 200 5380 "http://wiki.dmst.aueb.gr/doku.php?id=e-commerce" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36"
Μερικές φορές ειδικά οταν βάζετε νεα themes , updates, extension και ειδικά αν δεν προσέχετε να ειναι συμβατά με την έκδοση που έχετε προκαλείται συνολική ζημια στην εφαρμογή και πρέπει να την ξανακάνετε από την αρχή. Καλό θα είναι πρίν εκτελέσετε μια τέτοια ενέργεια να εχετε κρατήσει αντίγραφο και του κωδικα και της βάσης.
Για παραδειγμα αντιγραφή κωδικα του φακέλου 'magento'
sgrig@prometheus:~/public_html> cp -R -p magento magento_bakup
Αντίγραφο ασφαλείας και επαναφορα αντιγράφου της βάσης database1
sgrig@prometheus:~/ mysqldump -u sgrig -p --add-drop-database database1 > database1.bak ............ sgrig@prometheus:~/ mysql -u sgrig -p database1 < database1.bak