Django - instalacja Apache

Do tej pory w naszych przykładach używaliśmy serwera WWW Django dev. Ale ten serwer jest tylko do testowania i nie nadaje się do środowiska produkcyjnego. Będąc w produkcji, potrzebujesz prawdziwego serwera, takiego jak Apache, Nginx itp. Omówmy Apache w tym rozdziale.

Udostępnianie aplikacji Django przez Apache odbywa się za pomocą mod_wsgi. Więc pierwszą rzeczą jest upewnienie się, że masz zainstalowany Apache i mod_wsgi. Pamiętaj, kiedy tworzyliśmy nasz projekt i przyglądaliśmy się jego strukturze, wyglądało to tak:

myproject/
   manage.py
   myproject/
      __init__.py
      settings.py
      urls.py
      wsgi.py

Plik wsgi.py jest tym, który zajmuje się połączeniem między Django i Apache.

Powiedzmy, że chcemy udostępnić nasz projekt (myproject) Apache. Musimy tylko ustawić Apache, aby miał dostęp do naszego folderu. Załóżmy, że umieściliśmy nasz folder myproject w domyślnym katalogu „/ var / www / html”. Na tym etapie dostęp do projektu będzie możliwy za pośrednictwem adresu 127.0.0.1/myproject. Spowoduje to, że Apache wyświetli tylko folder, jak pokazano na poniższej migawce.

Jak widać, Apache nie obsługuje Django. Aby się tym zająć, musimy skonfigurować Apache w httpd.conf. Więc otwórz httpd.conf i dodaj następujący wiersz -

WSGIScriptAlias / /var/www/html/myproject/myproject/wsgi.py
WSGIPythonPath /var/www/html/myproject/

<Directory /var/www/html/myproject/>
   <Files wsgi.py>
      Order deny,allow
      Allow from all
   </Files>
</Directory>

Jeśli możesz uzyskać dostęp do strony logowania jako 127.0.0.1/myapp/connection, zobaczysz następującą stronę -