Preparación del entorno de Python
Lo primero que debemos hacer es configurar un entorno Python local. Para esto, usaremos VirtualEnv, que se usa comúnmente para aislar entornos de Python. Este tutorial requerirá acceso SSH a su cuenta, que se cubre
Primero, inicie sesión en su cuenta a través de SSH. Si ya ha iniciado sesión, asegurémonos de estar en la base de su directorio de inicio ingresando:
cd ~
A continuación, inicializaremos nuestro entorno de python local en el directorio "pyenv", relativo a su directorio de inicio (/home/%USER%/pyenv):
virtualenv --python=python2.6 pyenvsource pyenv/bin/activate
Después de ese último comando, nuestro indicador ahora debería verse un poco diferente, lo que indica que hemos ingresado a nuestro entorno de python. Ahora instalemos Django:
pip install django
Creando tu primera aplicación Django
En caso de que estés revisando este tutorial, asegúrate de que todavía estamos en el directorio de inicio de tu cuenta o cambiamos a él:
cd ~
Ahora que nuestro entorno se ha configurado para admitir Django, podemos crear nuestro primer proyecto basado en Django. Para este tutorial vamos a crear una aplicación Hello World estándar. Primero, creemos nuestro proyecto django:
~/pyenv/bin/django-admin.py startproject whyhellothere
Y ahora cambia al directorio de nuestra aplicación:
cd whyhellothere
Ahora debemos terminar de crear el diseño del directorio de nuestra aplicación:
mkdir publicmkdir tmp
Ahora, creemos una vista para nuestra aplicación:
vi whyhellothere/views.py
Dentro de este archivo, coloque estos contenidos para crear nuestra primera vista:
from django.http import HttpResponse
def hello(request):
return HttpResponse("Hello World")
A continuación, debemos conectar nuestra vista a una URL:
vi whyhellothere/urls.py
En la parte superior de este archivo, directamente debajo de la línea "from django.conf.urls import patterns, include, url", agregue lo siguiente:
from whyhellothere.views import hello
Luego, más adelante en el archivo, verá " url(r'^admin/', include(admin.site.urls))". Directamente encima de esta línea, agregue:
url(r'^$', hello),
Guarde y luego cierre el archivo. A continuación, debemos configurar nuestros activos estáticos para servirlos correctamente, abra el siguiente archivo:
vi whyhellothere/settings.py
En la parte inferior del archivo, debería encontrar una línea que se parece a "STATIC_URL ='/static/'", necesitamos cambiar esto a:
STATIC_URL = '/'
Y directamente debajo de esa línea, agregue:
STATIC_ROOT = '/home/%USER%/whyhellothere/public/'
Guarde el archivo y ciérrelo. Ahora deberá "recolectar" los activos estáticos de su nueva aplicación Django. Ejecute el siguiente comando:
~/pyenv/bin/python manage.py collectstatic
Debería generar una pregunta de sí o no sobre la sustitución de archivos en el directorio que proporcionamos anteriormente para la configuración STATIC_ROOT. Introduzca 'sí'.
Configurando tu nueva aplicación Django para Passenger
¡Ya casi hemos terminado! A continuación, debemos crear un archivo llamado "passenger_wsgi.py". Este es el archivo de entrada a nuestra aplicación:
vi "passenger_wsgi.py"
Dentro de este archivo, coloque el siguiente contenido sustituyendo %USER% por su propio usuario en el servidor:
import sys, os
virt_binary = "/home/%USER%/pyenv/bin/python"
if sys.executable != virt_binary: os.execl(virt_binary, virt_binary, *sys.argv)
sys.path.append(os.getcwd())
os.environ['DJANGO_SETTINGS_MODULE'] = "whyhellothere.settings"
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
Guarde y cierre el archivo. El paso final es conectar nuestra aplicación a la raíz del documento de nuestro dominio. Tenga en cuenta que esto implica reemplazar el directorio con un enlace simbólico, por lo que la raíz del documento debe estar vacía para evitar la pérdida de archivos. Si tiene otros dominios o contenido alojado en su cuenta, y está configurando esto para su dominio principal, comuníquese con soporte para cambiar la raíz de su documento primero. Si este es el único dominio en su cuenta y ningún otro contenido está alojado aquí, es seguro continuar como está y asumimos que "public_html" es la raíz del documento en cuestión. ¡Ajuste el directorio para una raíz de documento diferente!
Primero, elimine el directorio antiguo:
rm -fr /home/%USER%/public_html
Reemplácelo con un enlace simbólico a la carpeta pública de nuestra aplicación:
ln -s /home/%USER%/whyhellothere/public /home/%USER%/public_html
Guarde y cierre el archivo. Ahora intenta visitar tu sitio web, deberías ver "Hello World".