Generalidades
- Las instrucciones proporcionadas en la siguiente sección se consideran avanzadas.
- Se espera que estés bien informado sobre el shell de UNIX.
- El soporte técnico para estas instrucciones no está disponible en el soporte técnico de DreamHost.
- Los cambios en el servidor pueden hacer que esto se rompa.
- Preparate para solucionar este problema tu mismo si esto sucede.
Passenger se puede usar para servir aplicaciones web de Ruby on Rails y Python que usan el WSGI interfaz, incluida cualquier aplicación que use el marco Django.
Passenger permite que tu aplicación resida temporalmente en la memoria mientras se usa activamente. Esto hace posible que su sitio responda significativamente más rápido de lo que sería posible de otro modo.
En los siguientes ejemplos, username sería tu usuario Shell y example.com tu sitio web.
Configurar Passenger WSGI
Habilitar Passenger
Primero debes configurar el dominio para usar Passenger.
Esto permitirá que tu sitio use Passenger WSGI.
La raíz del documento de tu sitio cambia a /public cuando Passenger está habilitado. Este directorio se usará para servir medios estáticos.
Crear un archivo de passenger_wsgi.py
Una vez que hayas configurado el dominio para usar Passenger, crea un archivo llamado passenger_wsgi.py en la carpeta sobre la raíz del documento.
Si configuras la raíz de tu documento en /home/username/example.com/public, pondrías este archivo en el directorio/home/username/example.com. Por ejemplo:
/home/username/example.com/passenger_wsgi.py
Este archivo debe exportar un servidor WSGI con el nombre application. Aquí hay un ejemplo mínimo:
def application(environ, start_response): start_response('200 OK', [('Content-type', 'text/plain')]) return ["Hello, world!"]
Esta aplicación devuelve un archivo de texto con el contenido Hello, world! para cualquier solicitud.
Passenger WSGI y Django
Revisa el siguiente artículo para obtener instrucciones sobre cómo configurar Passenger para ejecutar Django.
Passenger WSGI y virtualenv
Después de que hayas creado un ambiente virtual, puedes seleccionar tu intérprete de Python en tiempo de ejecución. Esto se hace agregando el siguiente código al comienzo de tu passenger_wsgi.py:
import sys, os
INTERP = "/home/username/example.com/venv/bin/python3"
#INTERP is present twice so that the new Python interpreter knows the actual executable path
if sys.executable != INTERP: os.execl(INTERP, INTERP, *sys.argv)
Este ejemplo asume que has creado tu entorno virtual en el directorio de tu sitio web.