3 Stimmen

Django/mod_wsgi und PHP als Virtual Hosts auf demselben Apache Server mit MAMP

UPDATE: Meine ursprüngliche Frage ist unten, aber der Code, den ich mit der Frage gepostet habe, wurde zur endgültigen funktionierenden Lösung bearbeitet.

Ich versuche, mehrere Websites auf meinem MAMP-Entwicklungsserver auszuführen. Einige der Websites sind WordPress-Websites, die im htdocs von MAMP leben, und einige der Websites sind Django-Apps, die in einem Ordner mit dem Titel djangoprojects leben.

Ich habe versucht, die Lösungen aus diesen Stack-Fragen umzusetzen:

mehrere Django-Websites mit Apache & mod_wsgi

Wie führe ich Django und PHP zusammen auf einem Apache-Server aus?

aber ich war nicht erfolgreich. Ich konnte die Django-Site auf Apache mit dem Code ausführen, den Sie in den ersten VirtualHost-Klammern sehen (ab der Zeile des Prozesses nach hinten), aber dann konnten keine der PHP-Sites besucht werden.

Hilfe wird sehr geschätzt. Ich bin neu in diesem Bereich und kann die Fehler nicht erkennen.

Hier ist der Code aus meiner httpd.conf:

UPDATE: Der folgende Code funktioniert. Sowohl die Django-App als auch die PHP-Anwendungen existieren auf dem localhost-Server. Der zu PHP gehörende VirtualHost-Kram wurde weiter oben in der MAMP httpd.conf-Datei kopiert.

    ServerName localhost:80
    UseCanonicalName Aus
    DocumentRoot "/Applications/MAMP/htdocs" 

        Options Indexes FollowSymLinks
        AllowOverride None

        Options All
        AllowOverride All
        Order allow,deny
        Allow from all

    WSGIDaemonProcess site1 display-name=%{GROUP}
    WSGIProcessGroup site1
    Alias /media/ /Users/sequoia/djangoprojects/dynamics/media/

        Options ExecCGI
            Order deny,allow
        Allow from all

    WSGIScriptAlias /dynamics /Users/sequoia/djangoprojects/dynamics/apache/django.wsgi

        Order deny,allow
        Allow from all

1voto

Graham Dumpleton Punkte 56087

Ein paar Probleme zu Beginn:

  1. ServerName soll den Hostnamen angeben und nicht einen URL-Pfad.
  2. Sie sollten DocumentRoot niemals dort festlegen, wo sich Ihr Django-Quellcode befindet.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X