FAQ

Preguntas
Frecuentes

Consultá
tus inquietudes
Registrá tu Dominio
Categorías

Programación

Cómo instalar y configurar Django en una cuenta de hosting compartido de Linux

Django es un marco basado en Python que le permite crear rápida y fácilmente sitios web potentes. Este artículo muestra cómo instalar y configurar Django en una cuenta de alojamiento compartido de Linux que usa cPanel.

Después de completar los siguientes procedimientos, tendrá un sitio de Django en funcionamiento en su cuenta que:

  • Carga una página de inicio estática para el dominio.
  • Carga la interfaz de administración de Django.
  • Utiliza una base de datos SQLite.

Aunque hemos probado y ejecutado esta configuración de Django en cuentas de hosting compartido, no cuenta con soporte oficial.
Puede utilizar ésta configuración como punto de partida para sus propios proyectos de Django, pero desde el área de Soporte no podremos ayudarlo a solucionar problemas o depurar configuraciones personalizadas.

Tabla de contenido

  1. Paso 1: Crea una aplicación Python en cPanel
  2. Paso 2: Configurar el proyecto Django
  3. Más información
  4. Artículos relacionados

PASO 1: CREA UNA APLICACIÓN PYTHON EN CPANEL

El primer paso es crear una aplicación Python dentro de cPanel que alojará el proyecto Django. Para hacer esto, siga estos pasos:

  1. Inicia sesión en cPanel.
  2. En la sección SOFTWARE de la pantalla de inicio de cPanel, haga clic en «Setup Python APP«.
  3. En Setup new application , en el cuadro de lista Python version , seleccione 3.6 .
  4. En el cuadro de texto App Directory , escriba myapp .
  5. En el cuadro de lista App Domain / URI , seleccione el dominio que desea usar y luego deje el cuadro de texto URI vacío.
  6. Haga clic en Setup . cPanel crea la aplicación y configura el entorno Python.
  7. En Existing applications, donde dice Command for entering to virtual environment, copie el comando. Necesitará esta información en el siguiente paso.

PASO 2: CONFIGURAR EL PROYECTO DJANGO

Después de crear la aplicación Python en cPanel, estará listo para realizar las siguientes tareas en la línea de comandos:

    null
  • Instala Django.
  • Crea y configura el proyecto Django.
  • Configure Passenger para trabajar con el proyecto Django.

Para hacer esto, siga estos pasos:

1_ Inicie sesión en su cuenta utilizando SSH .

2_ Active el entorno virtual mediante el comando que anotó en el paso 7 anterior. Por ejemplo:

source /home/USERNAME/virtualenv/myapp/3.6/bin/activate

3_ Para instalar Django, escriba los siguientes comandos: 

cd ~
pip install django==2.1.8

Para verificar la versión de Django que está instalada, escribiendo el siguiente comando:

django-admin –version

4_ Para crear un proyecto Django, escriba el siguiente comando:

django-admin startproject myapp ~/myapp

5_ Para crear los directorios donde se almacenaran los archivos estáticos, escriba los siguientes comandos:

mkdir -p ~/myapp/templates/static_pages
mkdir ~/myapp/static_files
mkdir ~/myapp/static_media

6_ Use un editor de texto para abrir el archivo ~/myapp/myapp/settings.py , y luego realice los siguientes cambios:

  • Localice la línea ALLOWED_HOSTS y luego modifíquela de la siguiente manera. Reemplace example.com con su propio nombre de dominio
ALLOWED_HOSTS = ['example.com']
  • Localice el bloque de TEMPLATES , y luego modifíquelo de la siguiente manera:
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR,'templates')],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]
  • Localice la línea STATIC_URL y luego agregue las siguientes líneas debajo de ella:
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static_files')

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, "static_media")

7_ Utilice un editor de texto para abrir el archivo ~/myapp/myapp/urls.py. Elimine todo el texto existente y luego copie el siguiente texto en el archivo:

from django.contrib import admin
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static
from django.conf.urls import url
from django.views.generic.base import TemplateView

urlpatterns = [
    path('admin/', admin.site.urls),
    url(r'^$', TemplateView.as_view(template_name='static_pages/index.html'), name='home'),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

8_ Use un editor de texto para abrir el archivo ~/myapp/passenger_wsgi.py, y luego realice los siguientes cambios. Reemplace el USERNAME con su propio nombre de usuario de cuenta:

import myapp.wsgi
SCRIPT_NAME = '/home/USERNAME/myapp'

class PassengerPathInfoFix(object):
    """
    Sets PATH_INFO from REQUEST_URI because Passenger doesn't provide it.
    """
    def __init__(self, app):
        self.app = app

    def __call__(self, environ, start_response):
        from urllib.parse import unquote
        environ['SCRIPT_NAME'] = SCRIPT_NAME

        request_uri = unquote(environ['REQUEST_URI'])
        script_name = unquote(environ.get('SCRIPT_NAME', ''))
        offset = request_uri.startswith(script_name) and len(environ['SCRIPT_NAME']) or 0
        environ['PATH_INFO'] = request_uri[offset:].split('?', 1)[0]
        return self.app(environ, start_response)

application = myapp.wsgi.application
application = PassengerPathInfoFix(application)

9_ Use un editor de texto para crear un archivo index.html básico en el directorio ~/myapp/templates/static_pages . El archivo puede ser tan simple como un archivo de texto que dice Hello world .

10_ Escriba el siguiente comando:

python ~/myapp/manage.py migrate

11_ Configurar la cuenta de superusuario:

  • Escriba el siguiente comando:
python ~/myapp/manage.py createsuperuser
  • Cuando se le solicite Username , escriba el nombre de usuario del administrador y luego presione Entrar.
  • En la solicitud de Email address , escriba la dirección de correo electrónico del administrador y luego presione Intro.
  • Cuando se le solicite Password , escriba la contraseña del administrador y luego presione Intro.

12_ Escribe el siguiente comando para recoger los archivos estáticos:

python ~/myapp/manage.py collectstatic

13_ En cPanel, reinicie la aplicación Python:

  • Inicia sesión en cPanel.
  • En la sección SOFTWARE de la pantalla de inicio de cPanel, haga clic en Configurar aplicación Python .
  • En Aplicaciones existentes , localice la aplicación correcta y luego haga clic en Reiniciar .

14_ Prueba el sitio de Django:

  • Usa tu navegador para ir a http: // www. example.com , donde example.com representa su nombre de dominio. El archivo index.html debería cargar.
  • Usa tu navegador para ir a http: // www. example.com / admin , donde example.com representa su nombre de dominio. Debería ver la página de inicio de sesión de administración de Django. Para iniciar sesión, use las credenciales de superusuario que creó anteriormente.

Si el sitio web no aparece en su navegador, intente ejecutar el archivo passenger_wsgi.py manualmente. Para hacer esto, escriba el siguiente comando:

python ~/myapp/passenger_wsgi.py

No debe haber salida de texto a la consola cuando ejecuta este archivo. Si hay algún error, verifique la sintaxis en los archivos de configuración.

MÁS INFORMACIÓN

Ahora que tiene un sitio web habilitado para Django en funcionamiento, puede comenzar el verdadero trabajo de desarrollo de sus propias aplicaciones. Los siguientes recursos pueden ayudar:

Ver Más

cPanel + GIT+ TortoiseGit

En este tutorial aprenderemos a instalar y configurar GIT y TortoiseGit en la cuenta con cPanel.

INSTALACIÓN

GIT

Inicialmente sera necesario instalar GIT el cual se puede descargar para Windows desde: http://msysgit.github.io/

Captura de pantalla de 2014-04-25 12:21:35 Captura de pantalla de 2014-04-25 12:23:38 Captura de pantalla de 2014-04-25 12:23:53 Captura de pantalla de 2014-04-25 12:24:11 Captura de pantalla de 2014-04-25 12:24:14 Captura de pantalla de 2014-04-25 12:24:22 Captura de pantalla de 2014-04-25 12:24:37 Captura de pantalla de 2014-04-25 12:25:20

TortoiseGit

Luego instalar TortoiseGit: http://code.google.com/p/tortoisegit/   Captura de pantalla de 2014-04-25 12:25:43 Captura de pantalla de 2014-04-25 12:25:46 Captura de pantalla de 2014-04-25 12:25:51 Captura de pantalla de 2014-04-25 12:25:54 Captura de pantalla de 2014-04-25 12:26:07

CONFIGURACIÓN

 

Inicialmente crearemos una carpeta el proyecto o se puede utilizar una que ya tengan creada, en este caso le podremos de nombre proyecto1.git     Captura de pantalla de 2014-04-25 12:27:19 Captura de pantalla de 2014-04-25 12:27:35

Configuración conexión al servidor Remoto por SSH con clave publica / privada

Ahora generaremos las claves para establecer conexión con el servidor utilizando PuTTY Captura de pantalla de 2014-04-25 12:28:24Captura de pantalla de 2014-04-25 12:28:34   Presionando en Generate y tras mover el puntero por la ventana se generara la clave publica y privada unica, las cueles tendremos que guardar, en este caso le podremos de nombre proyecto1-public y proyecto1-private.ppk Captura de pantalla de 2014-04-25 12:29:43Captura de pantalla de 2014-04-25 12:30:04   Ahora es el momento de ingresar al cPanel de la cuenta e ir a la sección Acceso SSH/Shell Captura de pantalla de 2014-04-25 12:31:19 Presionar en Administración de Claves SSH   Captura de pantalla de 2014-04-25 12:31:31   Ingresar en la opción Importar Clave Captura de pantalla de 2014-04-25 12:32:04

 

En donde sera necesario copiar y pegar el contenido de las claves generadas y guardadas con los nombres proyecto1-public y proyecto1-private.ppk

Captura de pantalla de 2014-04-25 12:33:06

Al importar las claves puede generarse un mensaje de error pero seguramente queden importadas, ahora es necesario autorizar la clave para que tenga acceso, para esto hay que presionar en Administración de Autorización

Captura de pantalla de 2014-04-25 12:33:19

Presionar en AutorizeCaptura de pantalla de 2014-04-25 12:33:26Captura de pantalla de 2014-04-25 12:33:32

 

Quedando finalmente de la siguiente manera

Captura de pantalla de 2014-04-25 12:33:36

Con esto ya podrá acceder al servidor con la conexión SSH necesario para sincronizar sus proyectos en GIT

 

Ahora configuraremos el repositorio en el servidor conectándonos por SSH y ejecutando el comando git init –bare proyecto1.git quedando guardado en en /home/nombreDeUsuario/proyecto1.git (esta ruta es necesaria agrandarla para configurarla en TortoiseGit)

 

Captura de pantalla de 2014-04-25 12:41:32

 

Configurar TortoiseGit

 

Parándonos en la carpeta del proyecto, en nuestro caso proyecto1, presionamos el botón derecho y vamos a TortoiseGit / Settings

Captura de pantalla de 2014-04-25 12:34:10

 

Inicialmente colocaremos nuestros datos para poder identificar quien hace las modificaciones en los archivos y luego vamos a la opción del menú Git / Remote

Captura de pantalla de 2014-04-25 12:35:16

En donde crearemos la configuración con el servidor, en Remote va el nombre que se le desea dar a la conexión, en URL la ruta de conexión formada por protocolo + usuario + servidor + ruta al archivo GIT, en el ejemplo seria: ssh://githost@git.hostingbahia.com.ar/home/githost/proyecto1.git siendo githost el nombre de usuario que se utilizo para generar el tutorial, git.hostingbahia.com.ar el nombre del servidor y /home/githost/proyecto1.git la ruta absoluta al archivo del repositorio GIT
En la opción Putty Key la ruta del archivo que guardamos con la clave privada, en nuestro ejemplo llamada proyecto1-private.ppk y presionando en Add New/Save.

Captura de pantalla de 2014-04-25 12:36:47

Por ultimo quedara trabajar en los archivos de su repositorio, efectuar los commit y enviarlos al servidor. para conocer el funcionamiento GIT puede guiarse con los siguientes tutoriales http://rogerdudler.github.io/git-guide/index.es.html y http://rogerdudler.github.io/git-guide/index.es.html

Captura de pantalla de 2014-04-25 12:27:49

Captura de pantalla de 2014-04-25 12:38:16
Captura de pantalla de 2014-04-25 12:38:23

Captura de pantalla de 2014-04-25 12:39:36

Captura de pantalla de 2014-04-25 12:39:49

Captura de pantalla de 2014-04-25 12:39:57

Captura de pantalla de 2014-04-25 12:42:20



Esperamos haber sido de ayuda y no dude en contarnos sus experiencias y dificultades.

Ver Más

Formulario de contacto en PHP 2

 

 

Crear un archivo llamado contacto.html con el siguiente código:

 

<!–Título–>
<p><H2>Mi formulario HTML</H2></p>
<!–Formulario–>
<FORM id=»contacto» name=»contacto» action=»enviar.php» method=»POST»>
<p>
<label>Nombre <input name=»nombre» type=»text» id=»nombre»
size=»42″/></label>
</p>
<p>
<label>Empresa
<input name=»empresa» type=»text» id=»empresa» size=»31″/></label></p>
<p><label>E-mail <input name=»mail» type=»text» id=»mail» size=»43″/>
</label>
</p>
<p><label>Mensaje<br>
<textarea name=»mensaje» cols=»40″ rows=»8″ id=»mensaje»>
</textarea></label>
</p>
<p><input type=»submit» name=»Submit» value=»Enviar»/></p>
</FORM>

 

 

 

Crear un archivo llamado enviar.php, quien será el encargado de mandar los datos que se introduzcan en el formulario.

Reemplace ejemplo@mail.com por la dirección de mail en donde desea recibir el mensaje.

 

<?php
$nombre = $_POST[‘nombre’];
$mail = $_POST[‘mail’];
$empresa = $_POST[‘empresa’];

$header = ‘From: ‘ . $mail . » \r\n»;
$header .= «X-Mailer: PHP/» . phpversion() . » \r\n»;
$header .= «Mime-Version: 1.0 \r\n»;
$header .= «Content-Type: text/plain»;

$mensaje = «Este mensaje fue enviado por » . $nombre . «,
de la empresa » . $empresa . » \r\n»;
$mensaje .= «Su e-mail es: » . $mail . » \r\n»;
$mensaje .= «Mensaje: » . $_POST[‘mensaje’] . » \r\n»;
$mensaje .= «Enviado el » . date(‘d/m/Y’, time());

$para = ‘ejemplo@mail.com’;
$asunto = ‘Asunto del mail recibido’;

mail($para, $asunto, utf8_decode($mensaje), $header);

echo ‘Mensaje enviado correctamente’;
?>

 

 

  • Las tres primeras líneas establecen las variables que vendrán del formulario HTML, serán tratadas en el archivo php y llegarán al mail que recibamos.
  • En el bloque de líneas “header”, ‘enviar.php’ creará la información que nos llegará acerca del remitente del formulario.
  • Las líneas “mensaje” redactarán el correo que recibamos en el buzón que hemos escrito en la línea ‘para’ y con el ‘asunto’ indicado.
  • La penúltima línea “mail” será la encargada de enviarnos el mail con toda la información que os he resumido.
  • Finalmente, “echo” se encarga de que el usuario reciba un mensaje al haberse procesado correctamente su solicitud.

 

 

 

Ver Más

Formmail

Formmail es uno de los cgi más utilizados en la red. Con este programa usted puede enviar los datos de un formulario en el web a una casilla de correo.

NOTA:

  • Use un editor de programas, wordpad o un editor de textos planos, NO USE MS-Word o otros programas formateadores de textos ya que no funcionará el programa.

  • Debe de respetar todas las comas y comillas del cgi sin variar ni omitir ninguna.


Ruta de sendmail

Asegúrese que esa línea esta exactamente igual que en la imagen superior.

$mailprog= '/usr/lib/sendmail -i -t';

referers

@referers = (‘sudominio.com’,’ip de su servidor’);

ejemplo
@referers = (‘huacas.com’,’6422.110.26′);

En la línea @referers deberá poner su nombre de dominio (sin www ) y el  IP de su servidor que lo encontrará en su email de bienvenida donde tiene todos los datos técnicos de su WEB. Es muy importante de que se asegure que el número IP sea el correcto.


recipients

@recipients = (‘sudominio.com’,’usuario@sudominio.com’);

ejemplo
@recipients = (‘sudominio.com’,’info@sudominio.com’);

Introduzca nuevamente su dominio y la dirección de correo dentro de su domino donde recibirá los correos. Esta dirección tienen que ser una de las casillas de tu sitio web.

Ya no debe modificar nada más en el archivo formmail.pl


Formulario html

Su formulario deberá incluir el siguiente código en la parte <form>:

<form method=»POST» action=»/cgi-bin/formmail.pl»>

y debe de tener un recipiente o casilla de correo donde recibirá los correos enviados por el formulario

<input type=’hidden’ name=’recipient’ value=’info@sudominio.com’>

Estas dos líneas son las básicas para que su formulario funcione pero ademas podrá incluir :

Subject

<input type=’hidden’ name=’subject’ value=’Solicita información’>

En value debe de introducir lo que aparecerá en el campo subject o sujeto del correo.

Sort

<input type=’hidden’ name=’sort’ value=’campo1, campo2, campo3, …’>

Ordena los campos según su especificación

Redirect

<input type=’hidden’ name=’redirect’ value=’www.sudominio.com/gracias.html’>

Después de enviar el correo re-direcciona al visitante a la página definida en value.’

Required

<input type=’hiden’ name=’required’ value=’asunto,empresa,email’>

Este parámetro obliga al visitante a rellenar todos los campos de su formulario que están en value (asunto,empresa,email)

Para mayor información usted puede revisar la URL del autor:

http://www.worldwidemart.com/scripts/


Publicar en cgi-bin

Para publicar los archivos en su sitio debe hacerlo con un programa ftp y configurar los permisos de ejecución.

NOTA: Deberás publicar tu archivo FormMail.pl en formato texto desde el ftp (LeechtFTP), ubica la opción Text Transfer Type y seleccionala con un click como se muestra en la figura, una vez seleccionada esta opción publica tu archivo FormMail.pl.

Permiso 755

A continuación deberás seleccionar tu archivo FormMail.pl y con click derecho elige la opción set attributes y marca con un check las opciones indicadas en la figura.


Verificación de permiso 755

Para verificar que los permisos están correctos debes ingresar a a ver tu archivo FormMail.pl desde la sigueinte dirección: http://www.tudominio.com/cgi-bin/FormMail.pl

Si todo está correcto se mostrará el siguiente mensaje:

Error

Si los permisos no están correctos se generará el siguiente error, para solucinarlo debes otorgarle los Permisos 755

The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, tunombre@tucorreo.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

Si has hecho todos los pasos indicados el formulario funcionará enviando los datos a su casilla de email.

Ver Más
Hablá con nuestro equipo
¿Necesitas asesoramiento?
Hablá con nuestro equipo

0810-345-HOST(4678)

¡Hablemos Directo!</
¡Hablemos Directo!

20 años de Clientes

Felices y Satisfechos

El mejor servicio!!!!

Commentario

Muy buen servicio, nunca he tenido ningún problema

Commentario

Tengo su servicio de hosting desde hace varios años y no lo cambiaría por nada; simplemente por la predisposición en ayudar e intentar solucionar cada problema presentado, mostrando velocidad y profesionalismo al mismo tiempo. Un servicio humano y técnico realmente inmejorable.

Commentario

Chicos!! después de todos estos años, hoy distanciado de las webs, hoy solo como cliente, aprovecho para felicitarlos por la seriedad y dedicación que los caracteriza. En aquellos años había que recurrir a hostings en capital, por suerte uds se animaron y hoy contamos con un excelente servicio. Les mando un fuerte abrazo y espero alguna vez conocerlos en persona. Fer Vega / Underweb Design

Commentario

Tuve un problema con el espacio en disco apenas subi mi página web y mis consultas fueron respondidas inmediatamente. Muy buena atención!

Commentario

Muy buena atención, excelente respuesta a los pocos problemas encontrados!! Gracias por la atencón y felices fiestas!!

Commentario

Confiamos hace varios años en Hosting Bahia como proveedor tecnológico para dar soluciones de Hosting a nuestros clientes en Argentina. Gran calidad de servicio y tecnologia

Commentario

Tuve un problema con el espacio en disco apenas subi mi página web y mis consultas fueron respondidas inmediatamente. Muy buena atención!

Commentario

Agradecemos el apoyo de Hosting Bahia por brindarnos el espacio virtual para que el proyecto Bahiarecicla.com.ar pueda hacerse realidad. Asi como Hosting Bahia brindó su apoyo, comprometemos por éste medio a los bahienses, para que entre todos podamos hacer del reciclado, un modo de vida!!!.

Commentario

Excelente servicio y muy buena atencion! Satisfecho 100%

Commentario

Gran servicio, rápida respuesta y buena atención sigan así!

Commentario

Que puedo decir, hace años que trabajo con ellos y sin dudas son los mejores...RESPONSABILIDAD, CORDIALIDAD, SERIEDAD, PUNTUALIDAD son solo algunas cosas para destacar. Hoy en día eso no se consigue en ningún lado. 100% CONFIABLES y RECOMENDABLES!!! GRACIAS TOTALES

Commentario

Chicos! excelente servicio! la verdad que muy conforme porque ademas siempre estan para resolverme todos los problemas :) muchas gracias! Desde ya super confiables, responsables y recomendables... Felicitaciones!!!

Commentario

Tenía que hacer dos registros NIC. Gracias a la asistencia y predisposición de Martín, tanto en la oficina como la asistencia técnica telefónica, pude lograr mi objetivo. Excelente.

Commentario

Excelente nivel en el servicio, igual en la atencion...felicitaciones!!! desde www.mcdigitalmarketing.com.ar

Commentario

Excelente atención y asistencia al cliente. Soporte de 10!!! Me alegra contar con uds para mi empresa!!!

Commentario

Increíble servicio, gran soporte y excelente relación calidad/precio. Gracias Chicos!

Commentario

Excelente atención y gran servicio. Muy recomendable

Commentario

Excelente calidad y atención... Más que recomendables! Supieron ayudarme y asesorarme en todo y estuvieron siempre disponibles... Buenísimo que podamos contar con un servicio así en Bahía... Muchísimas gracias y ojalá mucha gente más se sume porque el servicio lo vale! EXCELENTE!

Commentario

Muy satisfecha con el servicio brindado y la atención día a día.

Commentario

Excelente el apoyo que me dieron con los tramites en nic.ar La calidad y calidez en la atención es de destacar!! Gracias Martín!!

Commentario

EXCELENTEEEEEEEE!! servicios y atención que son para aplaudir! siempre disponibles y dedicados. Muchas gracias!

Commentario

Excelente servicio y muy buena atencion! Satisfecho 100%

Commentario

Tuve un problema con el espacio en disco apenas subi mi página web y mis consultas fueron respondidas inmediatamente. Muy buena atención!

Commentario

Excelente el servicio que dan la asistencia al cliente y todo el soporte de ayuda con el que cuentan. son los mejores de bahía. muchas gracias por todos. !!!

Commentario

Estamos sumamente conformes con el servicio que nos brindan. Eficiencia profesional y excelente trato humano. No podemos pedir más. Seguiremos trabajando juntos (y esperemos que sea por mucho tiempo). Abrazo a la gente de Hosting Bahía. ECCO COMUNICACION CREATIVA / Radio Mitre Bahía Blanca

Commentario

EXCELENTEEEEEEEE!! servicios y atención que son para aplaudir! siempre disponibles y dedicados. Muchas gracias!

Commentario

Excelente, felicitaciones son gente de confianza, estamos muy conformes con el servicio que nos prestan .Sigan creciendo y los mejores deseos de prosperidad!!!

Commentario

Buen servicio, muy buena atencion.

Commentario

Gran servicio, rápida respuesta y buena atención sigan así!

Commentario