2016-04-04 4 views
1

Ich entwickle eine App mit Django 1.8 und ich versuche, Subdomains zu erhalten und dann angepasste Homepages abhängig von der Subdomain zu präsentieren. Zum Beispiel: example.com ist die Startseite meiner Firma, ein Benutzer meldet sich als conqueryor.example.com an und sie erhalten eine neue Homepage mit dem Namen "conqueryor.example.com" oder was immer sie wollen.Wie erhalte ich Subdomain-Wildcards auf Apache2 mit mod wsgi?

Klingt einfach genug, es gibt sogar die Django Subdomains-Bibliothek, die ich benutze. Mein aktuelles Problem besteht darin, Apache2 und mod WSGI lokal einzurichten, so dass ich es lokal testen kann, bevor ich alle anderen im Projekt betrachte. Ich bin derzeit in der Lage, die folgende .conf-Datei mit den Zeilen und 127.0.0.1 .example.dev in meiner/etc/hosts-Datei zu verwenden. In meinem Browser kann ich von example.dev aus auf meine App zugreifen, aber wenn ich irgendwelche Subdomains versuche, erhalte ich die Seite Server nicht gefunden. Ubuntu 15.10 Django 1.8.1 Apache 2,4

<VirtualHost *:80> 
ServerName example.dev 

DocumentRoot /home/example 
ServerAlias www.example.dev 

WSGIDaemonProcess example python-path=/home/example:/home/venv/example/lib/python2.7/site-packages 
WSGIProcessGroup example 
WSGIScriptAlias//home/example/saas/wsgi.py 


<Directory /home/example/static> 
Require all granted 
</Directory> 

<Directory /home/example/saas> 
<Files wsgi.py> 
Require all granted 
</Files> 
</Directory> 
</VirtualHost> 

<VirtualHost *:80> 
ServerName example.dev 


DocumentRoot /home/example 
ServerAlias example.dev 

WSGIDaemonProcess example2 python-path=/home/example:/home/venv/example/lib/python2.7/site-packages 
WSGIProcessGroup example2 
WSGIScriptAlias//home/example/saas/wsgi.py 

Alias /static/ /home/example/static/ 

<Directory /home/example/static> 
Require all granted 
</Directory> 

<Directory /home/example/saas> 
<Files wsgi.py> 
Require all granted 
</Files> 
</Directory> 
</VirtualHost> 

<VirtualHost *:80> 
ServerName example.dev 

DocumentRoot /home/example 
ServerAlias *.example.dev 

WSGIDaemonProcess example3 python-path=/home/example:/home/venv/example/lib/python2.7/site-packages 
WSGIProcessGroup example3 
WSGIScriptAlias//home/example/saas/wsgi.py 

Alias /static/ /home/example/static/ 
<Directory /home/example/static> 
Require all granted 
</Directory> 

<Directory /home/example/saas> 
<Files wsgi.py> 
Require all granted 
</Files> 
</Directory> 

Dank: Ich habe auch

Aktuelle Umgebung versucht mit dnsmasq und das Hinzufügen der Zeile address=/.example.dev/127.0.0.1!

Antwort

0

Ich werde die Frage verlassen, falls dies jemand anderen hilft, aber ich fand die Lösung ... Ich vergaß, ich hatte dnsmasq nicht neu gestartet, also nach dem Hinzufügen der address=/.example.dev/127.0.0.1 Zeile zu /etc/dnsmasq.conf und Neustart dnsmasq mit sudo /etc/init.d/dnsmasq restart Ich konnte auf Websites auf Sub-Domains zugreifen. Hoppla!