De Django-stack verhogen op MS Windows

De Django-stack verhogen op MS Windows

Dit artikel bevat gedetailleerde instructies voor het installeren en configureren van Apache-, Python- en PostgreSQL-programma's om de werking van het Django-project op MS Windows te garanderen. Django bevat al een lichtgewicht ontwikkelserver voor het lokaal testen van code, maar productiegerelateerde taken vereisen een veiligere en krachtigere webserver. We zullen mod_wsgi opzetten om te communiceren met ons project en Apache opzetten als toegangspoort tot de buitenwereld.

Opgemerkt moet worden dat de installatie en configuratie zal worden uitgevoerd in MS Windows 10 met 32 ​​bits. Ook 32-bits reactie zal universeel zijn en zal werken op 64-bits architectuur. Als u een 64-bits installatie nodig heeft, herhaalt u dezelfde stappen voor 64-bits softwaredistributies, de volgorde van acties zal identiek zijn.

Als Django-project zullen we het Severcart-programma gebruiken. Het is ontworpen om de verplaatsing van cartridges, de boekhouding van printapparatuur en leverings- en servicecontracten te beheren. Alle programma's en modules worden geïnstalleerd in de map C:severcart. Locatie maakt niet uit.

Python

De eerste stap is het downloaden en installeren van Python vanaf de Python-website. We selecteren Windows als besturingssysteem en de 32-bits versie. Op het moment van schrijven is de huidige versie 3.9.0rc2.

Klik na het downloaden van het installatiebestand met de rechtermuisknop op het installatiebestand en selecteer "Als administrator uitvoeren". U zou het onderstaande scherm moeten zien

De Django-stack verhogen op MS Windows

Schakel de selectievakjes in naast de selectievakjes "Install launcher for add user (recomended)" en "Add Python 3.9 to PATH" en klik op "Installatie aanpassen".

De Django-stack verhogen op MS Windows

Zet de selectievakjes naast "pip", "py launcher", "for all users (vereist verhoging)" en klik op "Next".

De Django-stack verhogen op MS Windows

Selecteer alle invoervelden zoals in de afbeelding hierboven en klik op "Installeren".

De Django-stack verhogen op MS Windows

Om te controleren of de installatie is gelukt, opent u cmd en typt u python. Als de installatie is gelukt, zou u een prompt moeten zien die lijkt op die hieronder.

De Django-stack verhogen op MS Windows

Mod_wsgi installeren

Download het gecompileerde pakket van mod_wsgi van de website
www.lfd.uci.edu/~gohlke/pythonlibs. De module fungeert als intermediair tussen de Apache-server en het Django-project. Het nieuwste pakket krijgt de naam mod_wsgi-4.7.1-cp39-cp39-win32.whl. Merk op dat het pakket is gecompileerd voor 32 bit Windows CPython versie 3.9. Het is ook vermeldenswaard dat de voor de hand liggende installatie van de module pip install mod_wsgi waarschijnlijk zal mislukken, aangezien voor het installatieproces is de Visual Studio C++-compiler vereist. We vinden het ongepast om de compiler volledig te installeren omwille van één Python-pakket op Windows.

Installeer de module met behulp van de standaard pip-pakketbeheerder in cmd of powershell:

pip install -U mod_wsgi-4.7.1-cp39-cp39-win32.whl

De Django-stack verhogen op MS Windows

apache

De distributiekit downloaden van de site https://www.apachelounge.com/download/.
De nieuwste versie van de webserver is Apache 2.4.46 win32 VS16. Om het programma te laten werken, hebt u ook een vooraf geïnstalleerd pakket "Visual C ++ Redistributable for Visual Studio 2019 x86" nodig.

We pakken de Apache-distributie uit in de C: severcartApache24-directory en veranderen vervolgens de regel met het nummer 37 in de onze

Define SRVROOT "C:/severcart/Apache24"

We controleren de werking van Apache door op de opdrachtregel uit te voeren

C:/severcart/Apache24/bin> httpd.exe

Als gevolg hiervan zou u in de browser moeten zien op 127.0.0.1 de regel "Het werkt!".

De Django-stack verhogen op MS Windows

Installeer de Apache-service, voer hiervoor de instructie uit op de opdrachtregel als beheerder:

C:severcartApache24bin>httpd.exe -k install -n "Apache24"

Vervolgens zullen we de module mod_wsgi verbinden met Apache. Voer hiervoor de instructie op de opdrachtregel uit

C:Windowssystem32>mod_wsgi-express module-config

Hiermee worden de volgende regels naar standaarduitvoer afgedrukt:

LoadFile "c:/severcart/python/python39.dll"
LoadModule wsgi_module "c:/severcart/python/lib/site-packages/mod_wsgi/server/mod_wsgi.cp39-win32.pyd"
WSGIPythonHome "c:/severcart/python"

Maak een bestand C:severcartApache24confextrahttpd-wsgi.conf en kopieer en plak de gedrukte regels daarboven.

We verbinden de nieuwe configuratie met het hoofdbestand httpd.conf
Voeg conf/extra/httpd-wsgi.conf toe

Sla wijzigingen op, herstart Apache-services

Net stop Apache24
Net start Apache24

PostgreSQL

Installeer PostgreSQL afkomstig van de site https://postgrespro.ru/windows. De huidige versie van het softwareproduct is 12. De voordelen van de Russische distributie ten opzichte van de canonieke distributie worden op dezelfde site gepresenteerd.

De Django-stack verhogen op MS Windows

De Django-stack verhogen op MS Windows

De Django-stack verhogen op MS Windows

De Django-stack verhogen op MS Windows

De Django-stack verhogen op MS Windows

De Django-stack verhogen op MS Windows

De Django-stack verhogen op MS Windows

De Django-stack verhogen op MS Windows

De Django-stack verhogen op MS Windows

De Django-stack verhogen op MS Windows

De installatiestappen zijn hierboven beschreven en behoeven geen commentaar. Installatie is uiterst eenvoudig.

We maken een database aan in postgres, waarin vervolgens de datastructuren van het Django-project worden opgeslagen

C:severcartpostgresqlbin>psql -h 127.0.0.1 -U postgres -W

CREATE DATABASE severcart WITH ENCODING='UTF8' OWNER=postgres CONNECTION LIMIT=-1 template=template0;

De Django-stack verhogen op MS Windows

De DB is aangemaakt. Laten we nu het Django-project implementeren.

De webapplicatie installeren

Download hiervoor het zip-archief van de site https://www.severcart.ru/downloads/ en pak uit in de map C:severcartapp

De Django-stack verhogen op MS Windows

We brengen wijzigingen aan in het hoofdconfiguratiebestand C: severcartappconfsettings_prod.py om de details van de databaseverbinding te specificeren

De Django-stack verhogen op MS Windows

Python-woordenboek DATABASES bevat gegevens over databaseverbindingen. Lees hier meer over instellen. https://docs.djangoproject.com/en/3.1/ref/databases/#connecting-to-the-database

Python Feature Packs installeren om applicaties binnen een Django-project uit te voeren

C:severcartapptkinstaller>python install.py

De Django-stack verhogen op MS Windows

Tijdens de werking van het script wordt de database geïnitialiseerd met tabellen, constructies, indexen en andere, en wordt voorgesteld om een ​​gebruiker aan te maken namens wie werk in het programma zal worden uitgevoerd.

We verbinden de Django-applicatie met de Apache-server, hiervoor vullen we het configuratiebestand aan
httpd-wsgi.conf met de volgende tekst

Alias /static "c:/severcart/app/static"

Alias /media "c:/severcart/app/media"

<Directory "c:/severcart/app/static">
    # for Apache 2.4
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

<Directory "c:/severcart/app/media">
    # for Apache 2.4
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>


WSGIScriptAlias / "c:/severcart/app/conf/wsgi_prod.py"
WSGIPythonPath "c:/severcart/python/"

<Directory "c:/severcart/app/conf/">
<Files wsgi_prod.py>
    Require all granted
</Files>   
</Directory>

Start de Apache-service opnieuw en test de toepassing

De Django-stack verhogen op MS Windows

Dat is alles. Bedankt voor het lezen.

In het volgende artikel zullen we een zelfuitpakkend installatie-archief maken in InnoSetup om snel een Django-project op de computer van een klant te implementeren. Voor degenen die alle stappen willen herhalen екс.Диск alle gebruikte distributies worden geladen.

Bron: www.habr.com

Voeg een reactie