Hola gente...
El trabajo no me había permitido seguir escribiendo en el blog, hoy me escape para entregarles este pequeño tutorial.
Lo que vamos a hacer es permitir que nuestras paginas web hechas con Django puedan ejectuarse por medio del servidor Web, en este caso configuraremos Apache con Xampp.
Requerimientos:
- Necesitamos tener instalado, Python, Django, Xampp.
- Descargaremos el siguiente modulo mod_wsgi-win32-ap22py27-3.3.so, en ese enlace encontraran los módulos para otras versiones, escojan la apropiada para ustedes.
- Realizar una pequeña aplicación con Django para probar nuestra configuración.
Bien, lo primero vamos a "c:/python27/scripts" ahí estará el archivo django-admin.py, lo copiamos y pegamos en "c:/xampp/htdocs", para habilitar la ejecucion de los modulos python...
Luego el modulo que descargamos mod_wsgi-win32-ap22py27-3.3.so, lo copiamos y pegamos en "c:/xampp/apache/modules" y lo renombramos a "mod_wsgi.so"
Ahora abrimos el archivo de configuración de apache que esta en "c:/xampp/apache/conf", el archivo se llama "httpd.conf", lo editamos y escribimos la siguiente linea: "LoadModule wsgi_module modules/mod_wsgi.so"
Ahora creamos un proyecto django, y iniciamos una aplicacion en la carpeta htdocs.
python django-admin.py startproject sitio
python django-admin.py startapp aplicacion
esto nos creara el proyecto y la aplicación django, quedaría algo asi en la carpeta htdocs: c:/xampp/htdocs/sitio
ahora modificamos una vez mas el httd.conf del apache y colocamos las siguientes lineas al final del archivo:
Alias /media/ "c:/xampp/htdocs/sitio/media"
<Directory c:/xampp/htdocs/sitio>
Order deny,allow
Allow from all
</Directory>
WSGIScriptAlias / "c:/xampp/htdocs/sitio/mod.wsgi"
Luego en la carpeta "c:/xampp/htdocs/sitio", creamos un archivo con extencion wsgi y lo llamamos mod, de tal forma que nos quede asi "mod.wsgi", el contenido de este archivo sera el siguiente:
import os, sys
sys.path.append('c:\\xampp\\htdocs\\sitio')
os.environ['DJANGO_SETTINGS_MODULE'] = 'sitio.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
y con esto tendríamos configurado y ligado nuestro proyecto django con el servidor web, reiniciamos el apache y luego vamos a localhost/sitio y tendría que aparecer el típico mensaje de django.
Si se fijan no hemos hecho nada como "python manage.py runserver" para arrancar el servidor, sino que de esto se encarga el apache ahora.
Espero todo vaya bien, y si están leyendo esto antes del Domingo 23 de septiembre de 2012, recuerden que este día tendremos un taller en vivo sobre django avanzado en www.autodidact.as
Saludos.
Que buen tuto ojalá todos fuesen asi :D
ResponderEliminarMe alegra que te haya sido de utilidad Martha!!
Eliminaraprovecho para que te unas a www.autodidact.as
Saludos
Uhh super lenin ;) Sólo veo que en la línea de crear el proyecto sólo debes corregir eso python manage.py startproject sitio
ResponderEliminarPor la de python django-admin.py startproject sitio :) buenisimo tuto Si me sirvio ;)
Oh OoO no me había fijado, muchas gracias por la observación ahora mismo lo rectifico.
Eliminar