
V tem članku bo predstavljeno podrobno navodilo za namestitev in nastavitev programov Apache, Python in PostgreSQL za delovanje Django projekta v operacijskem sistemu MS Windows. Django že vključuje poenostavljen razvojni strežnik za lokalno testiranje kode, vendar za naloge, povezane s produkcijo, potrebujemo varnejši in zmogljivejši spletni strežnik. Nastavili bomo mod_wsgi za interakcijo z našim projektom in nastavili Apache kot prehod v zunanji svet.
Poudariti je treba, da se namestitev in nastavitev izvajata v operacijskem sistemu MS Windows 10 z 32-bitno arhitekturo. Tudi 32-bitna različica bo univerzalna in delovala na 64-bitni arhitekturi. Če potrebujete 64-bitno namestitev, ponovite iste korake za 64-bitne distribucije programov, postopek bo identičen.
Kot Django projekt bomo uporabili program Severcart. Namenjen je upravljanju premikov kartuš, spremljanju tiskalnega materiala ter pogodbam o dobavi in vzdrževanju. Vsa namestitev programov in modulov bo potekala v imeniku C:severcart. Lokacija ni ključnega pomena.
Python
Prvi korak je prenos in namestitev Pythona s spletne strani Python. Izberemo Windows kot operacijski sistem in 32-bitno različico. Ob pisanju članka je trenutna različica 3.9.0rc2.
Ko prenesete namestitveno datoteko, z desno tipko miške kliknite na datoteko in izberite "Zaženi kot skrbnik". Morali bi videti spodnjo ekran.

Vklopite potrditvena polja za "Install launcher for all users (recommended)" in "Add Python 3.9 to PATH" ter kliknite na "Customize installation".

Označite potrditvena polja za "pip", "py launcher", "for all users (requires elevation)" in kliknite na "Next".

Izberite vsa vhodna polja, kot je prikazano na zgornji sliki, in kliknite na "Install".

Da se prepričate, da je bila namestitev uspešna, odprite cmd in vnesite python. Če je bila namestitev uspešna, bi morali videti poziv, podoben spodnjemu.

Namestite mod_wsgi.
Prenesite skompilirani paket z mod_wsgi s spletne strani.
. Modul opravlja funkcije posrednika med strežnikom Apache in projektom Django. Najnovejši paket bo poimenovan mod_wsgi-4.7.1-cp39-cp39-win32.whl. Upoštevajte, da je paket zaključen za 32-bitni Windows CPython različice 3.9. Prav tako velja omeniti, da bo očitna namestitev modula pip install mod_wsgi verjetno končala z napako, saj bo v postopku namestitve potrebna Visual Studio C++ prevajalnik. Namestitev celotnega prevajalnika samo zaradi enega Python paketa v Windows se zdi nerazumna.
Namestimo modul s pomočjo standardnega upravitelja paketov pip v cmd ali powershell:
pip install -U mod_wsgi-4.7.1-cp39-cp39-win32.whl

Apache
Prenesite distribucijo s spletne strani .
Najnovejša različica spletnega strežnika je Apache 2.4.46 win32 VS16. Prav tako bo za delovanje programa potrebna vnaprej nameščena 'Visual C++ Redistributable for Visual Studio 2019 x86'.
Razpakiramo distribucijo Apache v mapo C:severcartApache24, nato spremenimo vrstico s številko 37 na svojo
Define SRVROOT "C:/severcart/Apache24"
Preverite delovanje Apache tako, da v ukazni vrstici izvedete
C:/severcart/Apache24/bin> httpd.exe
Rezultat bi moral biti v brskalniku na naslovu vrstica 'It works!'.

Namestimo službo Apache, zato izvedemo v ukazni vrstici kot skrbnik ukaz:
C:severcartApache24bin>httpd.exe -k install -n "Apache24"
Nato povežemo modul mod_wsgi z Apache. za to izvedemo v ukazni vrstici:
C:Windowssystem32>mod_wsgi-express module-config
V rezultatih se v standardnem izhodu izpišejo vrstice:
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"
Ustvarimo datoteko C:severcartApache24confextrahttpd-wsgi.conf in tja kopiramo zgoraj izpisane vrstice.
Povežemo novo konfiguracijo z glavno datoteko httpd.conf
Include conf/extra/httpd-wsgi.conf
Shranjeno spremembo, znova zaženite storitve Apache
Net stop Apache24
Net start Apache24
PostgreSQL
Namestimo PostgreSQL, prenesen s spletne strani . Trenutna različica programske opreme – 12. Prednosti ruskega distribucijskega paketa v primerjavi s kanoničnim so predstavljene na isti spletni strani.










Dejanja namestitve so predstavljena zgoraj in ne potrebujejo komentarjev. Namestitev je izjemno enostavna.
Ustvarimo BDB v postgres, kjer bodo shranjene strukture podatkov Django projekta
C:severcartpostgresqlbin>psql -h 127.0.0.1 -U postgres -W
CREATE DATABASE severcart WITH ENCODING='UTF8' OWNER=postgres CONNECTION LIMIT=-1 template=template0;

Baza podatkov je ustvarjena. Zdaj postavimo Django projekt.
Namestiti želimo spletno aplikacijo
Zato prenesemo zip arhiv s spletne strani inštaliramo v mapo C:severcartapp

Spremenimo glavno konfiguracijsko datoteko C:severcartappconfsettings_prod.py za določitev podatkov o povezavi na bazo podatkov

Pythonov slovar DATABASES vsebuje podatke o povezavi na bazo podatkov. Več podrobnosti o nastavitvah preberite tukaj
Namestimo Python pakete, potrebne za delovanje aplikacij znotraj Django projekta
C:severcartapptkinstaller>python install.py

Med izvajanjem skripta bo inicializacija baze podatkov izvedena s tabelami, konstrukti, indeksi in drugimi, ter bo predlagano, da se ustvari uporabnik, pod katerim se bo program izvajal.
Povežemo Django aplikacijo s strežnikom Apache, zato dopolnimo konfiguracijsko datoteko
httpd-wsgi.conf z naslednjim besedilom
Alias /static "c:/severcart/app/static"
Alias /media "c:/severcart/app/media"
# za Apache 2.4
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
# za 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
Ponovno naložimo storitev Apache in preverimo delovanje aplikacije

To je to. Hvala, da ste prebrali.
V naslednjem članku bomo ustvarili namestitveni samodejno razširjajoč arhiv v InnoSetup za hitro uvedbo Django projekta na računalniku naročnika. Za tiste, ki žele ponovno izvesti vse korake na so bili naloženi vsi uporabljeni distribucijski paketi.
Izvor: habr.com
