Este artículo proporcionará instrucciones detalladas para instalar y configurar los programas Apache, Python y PostgreSQL para garantizar el funcionamiento de un proyecto Django en MS Windows. Django ya incluye un servidor de desarrollo liviano para probar su código localmente, pero las tareas de producción requieren un servidor web más seguro y poderoso. Configuraremos mod_wsgi para interactuar con nuestro proyecto y configuraremos Apache como una puerta de entrada al mundo exterior.
Cabe destacar que la instalación y configuración se realizará en MS Windows 10 con 32 bit. Además, la reacción de 32 bits será universal y funcionará en arquitectura de 64 bits. Si necesita una instalación de 64 bits, repita los mismos pasos para distribuciones de programas de 64 bits, la secuencia de acciones será idéntica.
Usaremos el programa Severcart como un proyecto de Django. Está diseñado para controlar el movimiento de cartuchos, contabilizando equipos de impresión y contratos de suministro y servicio. Todos los programas y módulos se instalarán en el directorio C: \ severcart. La ubicación no es importante.
Pitón
El primer paso es descargar e instalar Python desde el sitio web de Python. Elegimos Windows como sistema operativo y la versión de 32 bits. En el momento de escribir este artículo, la versión actual es 3.9.0rc2.
Después de descargar el archivo de instalación, haga clic derecho en el archivo de instalación y seleccione "Ejecutar como administrador". Debería ver la siguiente pantalla:
Establezca las casillas de verificación frente a las casillas de verificación "Instalar lanzador para agregar usuario (recomendado)" y "Agregar Python 3.9 a RUTA" y haga clic en "Personalizar instalación".
Establezca las casillas de verificación en "pip", "py launcher", "para todos los usuarios (requiere elevación)" y haga clic en "Siguiente".
Seleccione todos los campos de entrada como en la imagen de arriba y haga clic en "Instalar".
Para verificar que la instalación fue exitosa, abra cmd y escriba python. Si la instalación fue exitosa, debería ver un mensaje similar al siguiente
Instalar mod_wsgi
Descargue el paquete mod_wsgi compilado de
www.lfd.uci.edu/~gohlke/pythonlibs . El módulo actúa como intermediario entre el servidor Apache y el proyecto Django. El paquete más reciente se llamará mod_wsgi-4.7.1-cp39-cp39-win32.whl. Tenga en cuenta que el paquete está compilado para Windows CPython versión 3.9 de 32 bits. También vale la pena señalar que la instalación obvia del módulo pip install mod_wsgi probablemente fallará porque el proceso de instalación requiere el compilador de Visual Studio C ++. Consideramos que no es práctico instalar el compilador por completo por el bien de un paquete de Python en Windows.
Instale el módulo usando el administrador de paquetes pip estándar en cmd o powershell:
pip install -U mod_wsgi-4.7.1-cp39-cp39-win32.whl
apache
Descargue el kit de distribución de https://www.apachelounge.com/download/ .
La versión más reciente del servidor web es Apache 2.4.46 win32 VS16. Además, para que el programa funcione, necesita un paquete preinstalado "Visual C ++ Redistributable para Visual Studio 2019 x86".
Desempaquete la distribución de Apache en el directorio C: \ severcart \ Apache24, luego cambie la línea con el número 37 a la nuestra
Define SRVROOT "C:/severcart/Apache24"
Comprobamos el funcionamiento de Apache ejecutando en la línea de comandos
C:/severcart/Apache24/bin> httpd.exe
Como resultado, debería ver la línea "¡Funciona!" En el navegador en 127.0.0.1 .
Instalamos el servicio Apache, para ello ejecutamos la instrucción en la línea de comandos en nombre del Administrador:
C:\severcart\Apache24\bin>httpd.exe -k install -n "Apache24"
A continuación, conectemos el módulo mod_wsgi a Apache. Para hacer esto, ejecute la instrucción en la línea de comando
C:\Windows\system32>mod_wsgi-express module-config
Como resultado, las siguientes líneas se imprimirán en la salida estándar:
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"
Cree un archivo C: \ severcart \ Apache24 \ conf \ extra \ httpd-wsgi.conf y copie y pegue las líneas impresas de arriba.
Conecte la nueva configuración al archivo httpd.conf principal
Incluya conf / extra / httpd-wsgi.conf
Guarde los cambios, reinicie los servicios de Apache
Net stop Apache24
Net start Apache24
PostgreSQL
Instale PostgreSQL tomado del sitio https://postgrespro.ru/windows . La versión actual del producto de software es 12. Las ventajas de la distribución rusa de la canónica se presentan en el mismo sitio.
Los pasos de instalación se presentan arriba y no necesitan comentarios. La instalación es extremadamente sencilla.
Creamos una base de datos en postgres, donde posteriormente se almacenarán las estructuras de datos del proyecto Django
C:\severcart\postgresql\bin>psql -h 127.0.0.1 -U postgres -W
CREATE DATABASE severcart WITH ENCODING='UTF8' OWNER=postgres CONNECTION LIMIT=-1 template=template0;
Se crea la base de datos. Ahora implementamos el proyecto Django.
Instalación de la aplicación web
Para hacer esto, descargue el archivo zip del sitio https://www.severcart.ru/downloads/ y descomprímalo en el directorio C: \ severcart \ app \. Realice
cambios en el archivo de configuración principal C: \ severcart \ app \ conf \ settings_prod.py para indicar Detalles de la conexión a la base de datos El
diccionario Python BASES DE DATOS contiene detalles de la conexión a la base de datos. Para obtener detalles sobre la configuración, lea aquí https://docs.djangoproject.com/en/3.1/ref/databases/#connecting-to-the-database
Instale paquetes de valores de Python para ejecutar aplicaciones dentro del proyecto Django
C:\severcart\app\tkinstaller>python install.py
En el transcurso de la operación del script, la base de datos se inicializará con tablas, restricciones, índices y otros, y se propondrá crear un usuario en cuyo nombre se utilizará el programa.
Conectamos la aplicación Django al servidor Apache para esto, complementamos el archivo de configuración
httpd-wsgi.conf con el siguiente texto
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>
Reinicie el servicio Apache y pruebe la aplicación,
eso es todo. Gracias por leer.
En el próximo artículo, crearemos un archivo de instalación autoextraíble en InnoSetup para implementar rápidamente un proyecto de Django en la computadora de un cliente. Para aquellos que quieran repetir todos los pasos, todas las distribuciones utilizadas se cargan en Yandex.Disk .