Agregar un sitio web a DreamCompute

Generalidades

Hay varios pasos que debes seguir para agregar tu sitio web a DreamCompute. Sigue los pasos a continuación en orden.

Todos los pasos asumen que estás corriendo los comandos como el usuario predeterminado de tu instancia.

Paso 1

Crear una instancia

Primero debes lanzar una nueva instancia. Puedes hacerlo en el Panel de DreamCompute o usando la CLI de OpenStack. Revisa los siguientes artículos para conocer las instrucciones:

Paso 2

Apuntar tu DNS a la nueva instancia

Inicia sesión en tu panel de DreamHost. Allí puedes ajustar el DNS de tu dominio para que apunte a tu instancia de DreamCompute.

Paso 3

Instalar Apache o LAMP en la instancia

Inicia sesión en tu instancia usando las Llaves de Emparejamiento y el usuario predeterminado asignado a ella. Instala Apache según la imagen que elegiste para crear la instancia. El siguiente artículo muestra cómo hacerlo en Ubuntu:

De lo contrario, si sabes que necesitarás una base de datos y PHP, puede ser mejor idea instalar LAMP en su lugar:

Paso 4

Crear un nuevo usuario

Crea un nuevo usuario para el sitio web. Asegúrate de asignarle privilegios sudo al usuario y luego inicia sesión como el nuevo usuario.

Los comandos restantes de este artículo asumen que has iniciado sesión como el nuevo usuario que acabas de crear.

 
Paso 5

Agregar un acceso a SSH

Dependiendo de los permisos que tu usuario pueda necesitar, es posible que quieras habilitar SSH para el usuario. Esto le permite al usuario iniciar sesión en la instancia por SSH, en lugar de usar claves de seguridad.

 
Paso 6

Agregar tu dominio

En los siguientes ejemplos, username sería tu usuario Shell y example.com tu sitio web.

Crea una carpeta para el sitio web bajo tu nuevo nombre de usuario.

[user@instance]$ sudo mkdir /home/username/example.com

Configura los VirtualHosts para que tu instancia sepa cómo manejar el dominio. Para hacerlo, necesitas crear un archivo .conf.

[user@instance]$ sudo touch /etc/apache2/sites-available/example.com.conf

Se recomienda que nombres el archivo según tu dominio, para que siempre sepas qué archivo .conf corresponde a qué dominio.

Edita ese archivo:

[user@instance]$ sudo vim /etc/apache2/sites-available/example.com.conf

Luego coloca lo siguiente dentro de él. Asegúrate de cambiar cualquier URL example.com por tu sitio real y el DocumentRoot por la ubicación del sitio web bajo tu nombre de usuario.

<VirtualHost *:80>
    ServerName example.com
    ServerAlias www.example.com
    ServerAdmin admin@example.com
    DocumentRoot /home/username/example.com
    <Directory /home/username/example.com>
            AllowOverride all
            Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/example.com-error.log
    CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined
</VirtualHost>

Una vez agregado el VirtualHost, será necesario habilitar el sitio con un comando llamado a2ensite.

[user@instance]$ sudo a2ensite example.com
Enabling site example.com.
To activate the new configuration, you need to run:
  service apache2 reload

Por último, recarga tu servicio Apache para que lea los cambios.

[user@instance]$ sudo service apache2 reload
Paso 7

Habilitar userdir

Corre lo siguiente como tu usuario predeterminado:

[user@instance]$ sudo a2enmod userdir
[user@instance]$ sudo service apache2 restart

Esto habilita el módulo userdir. Ahora puedes verlo en el siguiente directorio:

[user@instance]$ ls -la /etc/apache2/mods-enabled

Edita el siguiente archivo:

[user@instance]$ sudo vim /etc/apache2/mods-enabled/userdir.conf

En ese archivo verás estas líneas:

UserDir public_html
<Directory /home/*/public_html>

Elimina la parte public_html para que quede así en cada caso:

UserDir /home/*/
<Directory /home/*/>

Guarda el archivo y reinicia Apache.

[user@instance]$ sudo service apache2 reload

Si ves tu sitio ahora, lo verás resolviéndose en la instancia de DreamCompute.

Paso 8

Agregar un certificado Let's Encrypt

Revisa el siguiente artículo para conocer las instrucciones sobre cómo usar Certbot para instalar un certificado Let's Encrypt:

Una vez instalado, visita tu sitio y deberías verlo resolviéndose desde el directorio /home de tu usuario.

Editar los archivos del sitio con un cliente FTP

Cuando los permisos del sitio están configurados como user:user, tu cliente FTP puede actualizar los archivos normalmente. Sin embargo, dependiendo de la funcionalidad de tu sitio web, es posible que necesite comunicarse directamente con Apache. Por ejemplo, si tienes un sitio CMS como WordPress, deberías mantener los permisos de archivo configurados como user:www-data para permitir que WordPress se comunique con la instancia.

¿Este artículo ha respondido sus preguntas?

Última actualización el PST.

¿Aún no encuentra lo que busca?