
Έχω πωλούνται στην 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](http://tred) να πάρω μια λίστα καταλόγου και όχι το καταστήσει την ιστοσελίδα. Νομίζω ότι έχω ακολουθήσει τις σεμινάρια σωστά, αλλά αυτό προφανώς δεν είναι σωστό. Τι μπορώ να κάνω για να κάνουν αυτό το έργο;

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



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

 


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


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


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


Από την [`mod_alias`τεκμηρίωση](http://httpd.apache.org/docs/2.2/mod/mod_alias.html) :



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

 

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

 

δοκιμάστε ακόλουθα αυτό το σεμινάριο - <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 / φάκελο σε μια διαφορετική θέση, όπως / δημόσια

 