από
thk στις 2008-09-24 10:55
(για να ακολουθήσετε τον παρακάτω οδηγο θα πρεπει να έχετε καποιες γνώσεις παραμετροποίησης apache , linux)1.Εξαρτήσεις
Το madpy έχει φτιαχτεί πάνω στο apache module mod_python.
Απαιτείται λοιπόν η ύπαρξη apache server ( δεν έχει δομιμασθει σε εκδοσεις μικρότερες της 2) , και mod_python 3.3.1 (παρέχεται στις περισσοτερες σύγχρονες linux διανομές ).
Συνοπτικά απαιτούνται τα ακόλουθα πακέτα :
- apache web server (δοκιμασμένο σε εκδόσεις 2+)
- mod_python (δοκιμασμένο σε εκδόσεις 3.3.1 +)
- cheetah templating engine
- postgresql (δοκιμασμένο σε εκδόσεις on 8.2 + )
- psycopg2 (python db api για την postgresql)
- pil (python-imaging)
- PyRSS2Gen (για τη δημιουργία rss feeds)
- python-crypto
- Έναν mail server για να μπορεί το madpy να αποστέλνει emails (μπορει να χρησιμοποιήθει και εξωτερικός mail server)
sudo apt-get install apache2 libapache2-mod-python python-cheetah postgresql python-psycopg2 python-imaging python-pyrss2gen python-crypto2. Αποσυμπιέστε το αρχείο tar.gz που κατεβάσατε σε μια περιοχή που κρατάτε τα sites σας.
tar xvzf madpy.tar.gzΘα πρεπει να δώσετε επιπλέον, δικαίωμα εγγραφης στο φακελο files και media/user_icons στο χρήστη με τον οποίο τρέχει o apache.chown -R :www-data files
chmod -R 775 files
chown -R :www-data media/user_icons
chmod -R 775 media/user_icons3. Apache
Στη συνέχεια βαλτε το ακόλουθο configuration του apache virtual host
<Directory /path/to/madpy>
SetHandler mod_python
PythonHandler main
PythonDebug On
</Directory>
<Directory /path/to/madpy/media>
SetHandler None
</Directory>4. Παράδειγμα για development site
Για παράδειγμα μπορείτε να εγκαταστήσετε τοπικά στον υπολογιστή σας το madpy για να "παίξετε" μαζί του. Φτιαξτε ένα καινούργιο virtualhost στον apache με το ακόλουθο configuration.
<VirtualHost *>
ServerAdmin root@localhost
ServerName dev.madpy.local
ServerAlias madpy.local
DocumentRoot /path/to/madpy
<Directory /path/to/madpy>
SetHandler mod_python
PythonHandler main
PythonDebug On
</Directory>
<Directory /path/to/madpy/media>
SetHandler None
</Directory>
LogLevel warn
ErrorLog /var/log/apache2/dev_madpy_error.log
CustomLog /var/log/apache2/dev_madpy.log combined
ServerSignature On
</VirtualHost>
σε μια debian based διανομή το παραπάνω configuration θα πρεπει να το βάλετε σε ένα νέο αρχειο υπο το όνομα dev.madpy.local στο φάκελο /etc/apache2/sites-available και θα πρεπει να δώσετε την εντολή
sudo a2ensite dev.madpy.localγια να μπορείτε να το προσπελάσετε βαλτε μια γραμμή στο /etc/hosts :
127.0.0.1 dev.madpy.local
απο κονσόλα
sudo echo "127.0.0.1 dev.madpy.local" >> /etc/hosts5. Εγκατάσταση βάσης
θα πρέπει να έχετε δημιουργήσει ένα χρήστη στην postgresql με superuser δικαιώματα που θα μπορει να μπαίνει με password authentication .
Δείτε ένα μέμο για να ρυθμίσετε την Postgresql ωστε να γίνεται authentication με password .
μέσα απο το φάκελο του madpy δώστε
chmod +x restoredb.sh
./restoredb.sh madpy db_user
6. Ρύθμιση του madpy
Θα πρέπει να αλλάξετε τα αρχεία
lib/settings/SiteSettings.py
Oι ρυθμίσεις που θα πρέπει να προσέξετε είναι:
ApplicationRoot="/path/to/madpy"
ServerName = "dev.madpy.local"
PortalAddress = "http://dev.madpy.local"
Τροποποιήστε τις ανάλογα με την εγκατάσταση σας
Και το αρχείο lib/tools/DBTool.py
όπου πρέπει να αλλάξετε το connection string για τη βάση σάς
self.ConnStr= "dbname = madpy user = db_user password = db_pass"
αλλαξτε τις τιμές db_user , db_pass ανάλογα με την εγκατάσταση σας.