[Directadmin] Mover dominios entre usuarios de Directadmin
Es importante leer guía completa antes de empezar a realizar el proceso. Esta guía esta destinada a clientes con acceso admin y ROOT SSH de sus servicios, por lo que en planes de hosting compartido no será posible su uso.
Para mover un dominio de un usuario a otro en Directadmin, debemos acceder a nuestro panel de control DirectAdmin con los datos de acceso similares a estos de ejemplo:
Y también necesitaremos los datos de acceso por SSH, que serán similares a estos:
Una vez en el panel de administración, accedemos al apartado de Añadir Nuevo Usuario:
Creamos el nuevo usuario que contendrá el dominio que queremos mover, le asignamos un dominio que después borraremos, por lo que puede llamarse como queramos (en nuestro caso usaremos dominiofalso.com):
A continuación tenemos que acceder por SSH y lanzar el comando para mover el dominio sustituyendo los argumentos de ejemplo por nuestros valores:
cd /usr/local/directadmin/scripts ./move_domain.sh dominio.com antiguousuario nuevousuario
Donde "dominio.com" es el dominio que vamos a mover
Donde "antiguousuario" es el nombre del usuario que actualmente tiene el dominio
Donde "nuevousuario" es el nombre del usuario que queremos que aloje el dominio desde ahora
OJO: MUY IMPORTANTE QUE REVISEMOS EL COMANDO BIEN ANTES DE LANZARLO, YA QUE DE NO HACERLO BIEN PODREMOS MOVER DOMINIOS DE OTROS USUARIOS POR ERROR
En nuestro caso sería esto:
Comprobamos que haya movido todo correctamente accediendo al nuevo usuario y procedemos a borrar el dominio falso que hemos creado con anterioridad, para ello accedemos de nuevo panel directadmin y vamos:
Lo seleccionamos el dominio que creamos para ser eliminado al principio y lo borramos:
Como puede que te hayas percatado, se ha movido todo, menos la base de datos, esto ocurre por que en Directadmin todas las bases de datos, van asignadas al usuario, no al dominio, incluso su nombre es del estilo "usuario_wp1", conteniendo el nombre del actual usuario que la tiene alojada, por lo que debemos moverla.
OJO: EL SIGUIENTE COMANDO HARA QUE NUESTRA WEB DEJE DE FUNCIONAR HASTA QUE HAGAMOS EL SIGUIENTE PASO, SE RECOMIENDA HACER ESTOS COMANDO EN HORAS DE POCA AFECTACIÓN.
Ahora vamos a mover la base de datos sustituyendo los argumentos de ejemplo por nuestros valores:
cd /usr/local/directadmin/scripts ./rename_database_with_user.sh usuarioantiguo_bd usuarionuevo_bd
Donde "usuarioantiguo_bd" es el nombre de la base de datos que actual
Donde "usuarionuevo_bd" es el nombre del usuario que queremos que aloje el dominio desde ahora, por lo tanto la nueva base de datos cambiara de nombre, y el nombre del usuario que hace la conexión.
OJO: MUY IMPORTANTE QUE REVISEMOS EL COMANDO BIEN ANTES DE LANZARLO, YA QUE DE NO HACERLO BIEN PODREMOS MOVER BASES DE DATOS DE OTROS USUARIOS POR ERROR
En nuestro caso sería esto:
Ahora nuestra web habrá dejado de funcionar, por lo que se debe actualizar la cadena de conexión con el nuevo nombre de la base de datos y el nuevo usuario
En nuestro caso al ser un WordPress, accedemos al administrador de archivos desde Directadmin, vamos a modificar el archivo wp-config.php, al cual está en la carpeta principal de la instalación (public_html):
Estos son los datos de conexión a la base de datos, solo debemos modificar el nuevo nombre de la base de datos y el nuevo usuario:
Como dijimos arriba, ahora la base de datos de llama como el usuarionuevo_bd por lo que el usuario que hace la conexión tambien ha cambiado el nombre con el mismo prefijo del usuario nuevo, la contraseña sigue siendo la misma:
Una vez terminado, ya podemos acceder a nuestro dominio para comprobar que funciona de manera normal.
Nota: Si estamos moviendo un Prestashop, la conexión a la base de datos se define en el archivo /app/config/parameters.php en la versión 1.7 en adelante, para versiones 1.6 o anteriores la ruta es /config/settings.inc.php. Para Joomla modificamos el archivo configuration.php que se encuentra en la carpeta principal. Para un Moodle debemos modificar el archivo config.php que también se encuentra en la carpeta principal. Para otros CMS debemos buscar la ruta.