Ρύθμιση Django με WSGI και apache

ψήφοι
8

Έχω πωλούνται στην mod_wsgi και apache και όχι mod_python. Έχω όλα τα μέρη εγκατεστημένα (Django, apache, mod_wsgi), αλλά έχουν τρέξει σε ένα ζήτημα κατά την ανάπτυξη.

Είμαι σε OSX 10.5 με apache 2.2 και Django 1.0b2, mod_wsgi-2.3

Η εφαρμογή μου ονομάζεται TRED.

Εδώ είναι τα σχετικά αρχεία: httpd-Πατρόν (περιλαμβάνεται στο httpd-conf)

NameVirtualHost TRED: 80



  ServerName TRED

  Alias ​​/ admin_media /usr/lib/python2.5/site-packages/django/contrib/admin/media

  
    Παραγγελία επιτρέπουν, να αρνηθεί
    Επιτρέψτε από όλους
  

  Alias ​​/ media / χρήστες / DMG / τοποθεσίες / TRED / μέσα μαζικής ενημέρωσης

  
    Παραγγελία επιτρέπουν, να αρνηθεί
    Επιτρέψτε από όλους
  

  Alias ​​/ / χρήστες / DMG / τοποθεσίες / TRED /

  
        Παραγγελία επιτρέπουν, να αρνηθεί
        Επιτρέψτε από όλους
    

  WSGIScriptAlias ​​/ /Users/dmg/Sites/tred/mod_wsgi-handler.wsgi

  WSGIDaemonProcess TRED χρήστη = ομάδα DMG = διεργασίες προσωπικό = 1 κλωστές = 10
  WSGIProcessGroup TRED


mod_wsgi-handle.wsgi

sys εισαγωγής
os εισαγωγής

sys.path.append (os.path.dirname (os.path.abspath (__ file__)) + '/ ..')
os.environ [ 'DJANGO_SETTINGS_MODULE'] = 'tred.settings'

django.core.handlers.wsgi εισαγωγής

εφαρμογή = django.core.handlers.wsgi.WSGIHandler ()

Όταν πηγαίνω στο http: // TRED να πάρω μια λίστα καταλόγου και όχι το καταστήσει την ιστοσελίδα. Νομίζω ότι έχω ακολουθήσει τις σεμινάρια σωστά, αλλά αυτό προφανώς δεν είναι σωστό. Τι μπορώ να κάνω για να κάνουν αυτό το έργο;

Δημοσιεύθηκε 31/08/2008 στις 11:03
πηγή χρήστη
Σε άλλες γλώσσες...                            


4 απαντήσεις

ψήφοι
6

Τι θα συμβεί εάν αφαιρέσετε την Alias /οδηγία;

Απαντήθηκε 31/08/2008 στις 17:20
πηγή χρήστη

ψήφοι
5

Δουλεύει. Δεν έχω ιδέα γιατί, αλλά το κάνει.

Για μελλοντική αναφορά:

Δουλεύει, επειδή Apache επεξεργάζεται οδηγίες ψευδώνυμο, προκειμένου, και χρησιμοποιεί τον πρώτο αγώνα. Ήταν πάντα το χτύπημα Alias /, το οποίο θα ταιριάζει με τίποτα, πριν WSGIScriptAlias.

Από την mod_aliasτεκμηρίωση :

Πρώτον, όλες οι ανακατευθύνσεις σε επεξεργασία πριν από ψευδώνυμα επεξεργασία, και ως εκ τούτου, το αίτημα που ταιριάζει με μια Redirectή RedirectMatchδεν θα έχει ποτέ εφαρμοστεί ψευδώνυμα. Δεύτερον, τα ψευδώνυμα και ανακατευθύνσεις υποβάλλονται σε επεξεργασία με τη σειρά που εμφανίζονται στα αρχεία ρυθμίσεων, με τον πρώτο αγώνα το προβάδισμα.

Απαντήθηκε 31/08/2008 στις 21:51
πηγή χρήστη

ψήφοι
7

Σημειώστε ότι Alias ​​και WSGIScriptAlias ​​οδηγίες δεν έχουν την ίδια προτεραιότητα. Έτσι, δεν θα υποβληθούν σε επεξεργασία με σκοπό το αρχείο όπως γράφεται. Αντ 'αυτού, όλες οι οδηγίες Alias ​​πάρει το προβάδισμα έναντι WSGIScriptAlias ​​οδηγίες. Έτσι, δεν θα είχε σημασία αν η Ψευδώνυμο «/» εμφανίστηκε μετά WSGIScriptAlias, θα εξακολουθούν να έχουν το προβάδισμα.

Απαντήθηκε 24/06/2009 στις 11:39
πηγή χρήστη

ψήφοι
2

δοκιμάστε ακόλουθα αυτό το σεμινάριο - http://singlas.in/5-step-tutorial-for-using-django-with-apache-and-mod_wsgi/

προσπαθείτε να φιλοξενήσει apache / var / www / φάκελο και την εφαρμογή Django τόσο στο ριζικό (/). Δεδομένου ότι η οδηγία Alias ​​υπερισχύει WSGIScriptAlias, αυτό καθιστά apache κατάλογο.

μπορείτε να δοκιμάσετε για να φιλοξενήσει την εφαρμογή Django στο / app. Εναλλακτικά φιλοξενήσει το / var / www / φάκελο σε μια διαφορετική θέση, όπως / δημόσια

Απαντήθηκε 22/07/2013 στις 19:14
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more