
I denne artikkelen vil det bli presentert en detaljert veiledning for installasjon og konfigurasjon av programmene Apache, Python og PostgreSQL for Ä sikre drift av et Django-prosjekt pÄ Windows-operativsystemet. Django inkluderer en forenklet utviklingsserver for lokal testing av koden, men for oppgaver relatert til produksjon kreves en sikrere og kraftigere webserver. Vi vil konfigurere mod_wsgi for interaksjon med prosjektet vÄrt og sette opp Apache som en port til den ytre verden.
Det er verdt Ä merke seg at installasjonen og oppsettet vil bli utfÞrt pÄ Windows 10 med 32-biters arkitektur. Den 32-biters versjonen vil ogsÄ fungere pÄ 64-biters arkitektur. Hvis du trenger en 64-biters installasjon, gjenta de samme trinnene for 64-biters distribusjoner, prosessens rekkefÞlge vil vÊre den samme.
Som vÄrt Django-prosjekt vil vi bruke programmet Severcart. Det er designet for Ä administrere bevegelsene til patroner, holde oversikt over utskriftsutstyr, samt kontrakter for levering og vedlikehold. Installering av alle programmer og moduler vil skje i katalogen C:severcart. Stedet er ikke avgjÞrende.
Python
Det fÞrste trinnet er Ä laste ned og installere Python fra Python-nettsiden. Velg Windows som operativsystem og 32-biters versjonen. PÄ tidspunktet for skrivingen av denne artikkelen er den nÄvÊrende versjonen 3.9.0rc2.
Etter Ä ha lastet ned installasjonsfilen, hÞyreklikker du pÄ installasjonsfilen og velger «KjÞr som administrator». Du skal se skjermen nedenfor.

Sett avkrysningsboksene «Install launcher for all users (rekommandert)» og «Add Python 3.9 to PATH» og klikk pÄ «Tilpass installasjon».

Sett avkrysningsboksene for «pip», «py launcher», «for all users (krever heving)» og klikk «Neste».

Velg alle inndatafeltene som pÄ bildet ovenfor og klikk pÄ «Installer».

For Ä sikre at installasjonen var vellykket, Äpne cmd og skriv python. Hvis installasjonen var vellykket, skal du se et ledetekst som ligner det nedenfor.

Installer mod_wsgi.
Last ned den forhÄndskomilerte pakken med mod_wsgi fra nettstedet.
. Modulen fungerer som en mellommann mellom Apache-serveren og Django-prosjektet. Den nyeste pakken vil hete mod_wsgi-4.7.1-cp39-cp39-win32.whl. VÊr oppmerksom pÄ at pakken er kompilert for 32-biters Windows CPython versjon 3.9. Det er ogsÄ viktig Ä merke seg at et Äpenbart forsÞk pÄ Ä installere modulen med pip install mod_wsgi mest sannsynlig vil feile, da det under installasjonen kreves en Visual Studio C++-kompilator. Det er ikke hensiktsmessig Ä installere hele kompilatoren bare for én Python-pakke i Windows.
Installer modulen med den standard pakkebehandleren pip i cmd eller powershell:
pip install -U mod_wsgi-4.7.1-cp39-cp39-win32.whl

Apache.
Last ned distribusjonen fra nettstedet .
Den nyeste versjonen av webserveren er Apache 2.4.46 win32 VS16. For Ä kjÞre programmet, mÄ du ogsÄ ha installert pakken «Visual C++ Redistributable for Visual Studio 2019 x86» pÄ forhÄnd.
Pakk ut distribusjonen av Apache til katalogen C:severcartApache24, og endre deretter linje nummer 37 til din egen
Define SRVROOT "C:/severcart/Apache24"
Sjekk Apache sin funksjonalitet ved Ă„ kjĂžre i kommandolinjen
C:/severcart/Apache24/bin> httpd.exe
Som et resultat bÞr du se i nettleseren pÄ adressen setningen «It works!».

Installer Apache-tjenesten, for dette kjĂžrer vi i kommandolinjen som administrator:
C:severcartApache24bin>httpd.exe -k install -n "Apache24"
Deretter skal vi koble mod_wsgi-modulen til Apache. For dette kjĂžrer vi i kommandolinjen:
C:Windowssystem32>mod_wsgi-express module-config
Som et resultat vil de fĂžlgende linjene bli skrevet ut til standard utgang:
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"
Opprett filen C:severcartApache24confextrahttpd-wsgi.conf og kopier de skrevne linjene ovenfor inn dit.
Koble den nye konfigurasjonen til hovedfilen httpd.conf
Include conf/extra/httpd-wsgi.conf
Lagre endringene, og start Apache-tjenestene pÄ nytt
Net stop Apache24
Net start Apache24
PostgreSQL
Installer PostgreSQL fra nettstedet . Den nÄvÊrende versjonen av programvaren er 12. Fordelene med den russiske distribusjonen i forhold til den kanoniske er beskrevet pÄ samme nettsted.










Installeringsprosessen er beskrevet ovenfor og trenger ikke flere kommentarer. Den er svĂŠrt enkel.
Opprett en database i postgres, hvor strukturer av Django-prosjektet vil bli lagret
C:severcartpostgresqlbin>psql -h 127.0.0.1 -U postgres -W
CREATE DATABASE severcart WITH ENCODING='UTF8' OWNER=postgres CONNECTION LIMIT=-1 template=template0;

Databasen er opprettet. NĂ„ setter vi opp Django-prosjektet.
Installer web-applikasjonen
For dette, last ned zip-arkivet fra nettstedet og og pakkar ut til katalogen C:severcartapp

Vi gjĂžr endringer i hovedkonfigurasjonsfilen C:severcartappconfsettings_prod.py for Ă„ angi tilkoblingsdetaljer til DB

Python-ordboken DATABASES inneholder tilkoblingsdetaljer til DB. Les mer om innstillingene her
Vi installerer betydningsfulle Python-pakker for Ă„ arbeide med applikasjoner i Django-prosjektet
C:severcartapptkinstaller>python install.py

Under kjĂžringen av skriptet vil databasen bli initialisert med tabeller, begrensninger, indekser og mer, og det vil bli tilbudt Ă„ opprette en bruker som skal brukes i programmet.
Vi kobler Django-applikasjonen til Apache-serveren ved Ă„ legge til konfigurasjonsfilen
httpd-wsgi.conf med fĂžlgende tekst
Alias /static "c:/severcart/app/static"
Alias /media "c:/severcart/app/media"
# for Apache 2.4
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
# for Apache 2.4
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
WSGIScriptAlias / "c:/severcart/app/conf/wsgi_prod.py"
WSGIPythonPath "c:/severcart/python/"
Require all granted
Vi laster pÄ nytt Apache-tjenesten og sjekker applikasjonens funksjonalitet

Det var alt. Takk for at du leste.
I neste artikkel skal vi lage en selvutpakkende installasjonsarkiv i InnoSetup for rask distribusjon av Django-prosjektet pÄ kundens datamaskin. For de som Þnsker Ä gjenta alle handlingene pÄ har alle brukte distribusjoner blitt lastet opp.
Kilde: habr.com
