Migrar páginas web a un nuevo servidor (Linux) de forma manual
Utilice la función «Imprimir» al final de la página para crear un PDF.
En este artículo aprenderás a:
- identificar los datos necesarios de tu página web y los archivos de configuración en Apache y Nginx
- hacer una copia de seguridad de la base de datos MySQL utilizada
- guardar los archivos tu página web y la base de datos MySQL exportada localmente en tu ordenador
- instalar aplicaciones como Apache, Nginx, MySQL/MariaDB, PHP, Plesk y WordPress
- proteger el sistema operativo e instalaciones
- importar los archivos de tu página web
- trasladar un blog de WordPress
Advertencia
Para migrar los datos de tu servidor manualmente a un servidor nuevo, antes debes migrar tus dominios y bandejas de entrada de correo electrónico. Además, tras haber migrado tus dominios, también debes ajustar la configuración DNS. De lo contrario, corres el riesgo de experimentar una pérdida de datos.
Consulta las instrucciones detalladas sobre cómo migrar manualmente los datos de tu servidor a un VPS actual en el siguiente artículo:
Migrar los datos de tu servidor a un nuevo VPS de forma manual
Notas
- Para la correcta migración de una página web se requieren una cuidadosa planificación y ejecución.
- Antes de la migración, confirma qué ajustes y configuraciones de seguridad se deben realizar en el nuevo servidor. Lleva a cabo estos ajustes como parte de la migración. Esto se aplica tanto al sistema operativo como a las aplicaciones instaladas.
- Después de la migración, asegúrate de comprobar cuidadosamente el funcionamiento de tu página web, aplicaciones y scripts. Reserva tiempo suficiente para estas pruebas de control y la resolución de problemas.
- Informa a tus usuarios de cualquier tiempo de inactividad previsto.
- Ten en cuenta que la migración de páginas web no está incluida en nuestro ámbito de asistencia. De ser preciso, ponte en contacto con profesionales en desarrollo web para determinar la mejor manera de migrar tu página web. Si necesitas dichos servicios, puedes buscar la empresa especialista más adecuada para ti en nuestro directorio IONOS Partner.
1) Identificar los archivos de la página web
Para determinar los archivos necesarios, sigue estos pasos:
Apache
Establece una conexión SSH con el servidor utilizado previamente e inicia sesión como administrador.
Para buscar el texto que contenga el nombre de tu dominio en todos los archivos del directorio /etc/apache2/sites-enabled y sus subdirectorios, sustituye el marcador de posición en el siguiente comando. A continuación, pulsa Intro:
[root@localhost ~]# grep -Ril "NOMBRE_DE_DOMINIO" /etc/apache2/sites-enabled
Por ejemplo:[root@localhost ~]# grep -Ril "example.com" /etc/apache2/sites-enabled
Entonces, se mostrará la ruta del archivo de configuración de tu página web.
Por ejemplo:/etc/apache2/sites-enabled/example.com.conf
Abre el archivo con el editor vi. Para ello, adapta el comando siguiente y pulsa Intro:
[root@localhost ~]# vi /etc/RUTA/RUTA/NOMBRE_DE_ARCHIVO.conf
Por ejemplo:[root@localhost ~]# vi /etc/apache2/sites-enabled/example.com.conf
Anota la ruta a los archivos de tu página web que aparecen en la línea DocumentRoot. En el ejemplo siguiente, se trata del directorio /var/www/html.
[root@localhost ~]# vi /etc/apache2/sites-enabled/example.com.conf
VirtualHost *:80>
...
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
...
ErrorLog ${APACHE LOG DIR}/error.log
CustomLog ${APACHE LOG DIR}/access.log combined- Pulsa la tecla [ESC].
- Para salir de vi y guardar el archivo, introduce el comando :wq y, a continuación, pulsa Intro.
Nginx
- Establece una conexión SSH al servidor utilizado previamente e inicia sesión como administrador.
Abre el directorio de configuración de Nginx.
[root@localhost ~]# cd /etc/nginx
Abre el archivo principal de configuración de Nginx con el editor vi. Este suele ser el archivo nginx.conf. Para ello, adapta el comando de abajo y luego pulsa Intro:
[root@localhost ~]# vi /etc/nginx/nginx.conf
- Busca en el archivo de configuración principal las líneas que contengan include. A continuación, comprueba qué otros archivos o directorios de configuración se cargan (por ejemplo, sites-enabled/*).
- Anota los archivos o directorios de configuración necesarios y sus rutas.
Para encontrar la directiva raíz que especifica la ruta a los archivos de la página web, introduce el siguiente comando:
[root@localhost ~]# grep -R 'root' /etc/nginx/
Este comando busca la cadena de caracteres root en todos los archivos situados por debajo de /etc/nginx.
La salida te muestra los archivos y las líneas asociadas en las que se establece la directiva root. Por ejemplo, la salida de grep puede contener varias líneas si Nginx aloja varias páginas web (bloques de servidores). Cada línea muestra la ruta del archivo de configuración y la línea en la que se establece la directiva root.Por ejemplo:
/etc/nginx/sites-available/example.com: root /var/www/example.com/html;
En este ejemplo, la ruta /var/www/example.com/html se utiliza como directorio raíz para la página web example.com.
- Anota la ruta del directorio raíz.
Comprueba el contenido del directorio raíz, que puedes ver introduciendo el siguiente comando:
[root@localhost ~]# ls -l /RUTA
Por ejemplo:
[root@localhost ~]# ls -l /var/www/example.com/html
2) Hacer una copia de seguridad de la base de datos MySQL
Para migrar la base de datos MySQL de tu página web, necesitas conocer los datos de acceso a la base de datos MySQL. También precisas la siguiente información:
- puerto
- host
- nombre de la base de datos
Si conoces los datos de acceso a la base de datos MySQL, puedes omitir este apartado:
- Determinar los datos de acceso
A continuación, te explicamos dónde puedes encontrar los datos de acceso a MySQL:
WordPress
En WordPress puedes encontrar los datos de acceso a MySQL en el archivo wp-config.php. Este se encuentra en el directorio raíz de tu instalación de WordPress.
Las rutas típicas son las siguientes:
Ruta 1:
/var/www/html/wp-config.php
Ruta 2:/var/www/example.com/wp-config.php
/** The name of the database for WordPress */
define('DB_NAME', 'db123456789');
/** MySQL database username */
define('DB_USER', 'dbo123456789');
/** MySQL database password */
define('DB_PASSWORD', 'Secret_Password');
/** MySQL hostname */
define('DB_HOST', 'db123456789.hosting-data.io');
/** WordPress Database Table prefix.
$table_prefix = 'abcd';
Páginas web sin CMS
Para webs que acceden directamente a una base de datos y no utilizan CMS, el almacenamiento de los datos de acceso depende de la configuración individual. Los datos de acceso suelen almacenarse en archivos de configuración que son utilizados por los scripts respectivos. En este caso, para encontrar los datos de acceso debes buscar los parámetros de conexión a la base de datos en los archivos PHP, Python, Java u otros archivos backend.
- Exportar la base de datos MySQL
Para hacer una copia de seguridad de una base de datos MySQL, utiliza la herramienta mysqldump, que se facilita con la mayoría de las instalaciones de MySQL. Sustituye los marcadores de posición en el comando siguiente y, a continuación, pulsa Intro.
mysqldump --no-tablespaces --port NÚMERO_DE_PUERTO --host=NOMBRE_DE_HOST --user=NOMBRE_DE_USUARIO --password=CONTRASEÑA NOMBRE_DE_BASE_DE_DATOS | gzip > /root/dbdump.sql.gz
Tras introducir el comando, la base de datos se exportará al directorio raíz. El nombre del archivo es dbdump.sql.gz.
Nota
Si los nombres de tus archivos, contraseñas o nombres de usuario contienen caracteres especiales, debes encerrarlos entre comillas simples (') en el comando mysqldump o mysql.
Por ejemplo: mysqldump [...] --password='%gCjmnrmLk!xnSefw'
3) Guardar los archivos de tu página web y la base de datos MySQL exportada localmente en tu ordenador
Guarda la copia de los archivos de tu web y la base de datos MySQL exportada en un ordenador local. Para ello, puedes utilizar el programa FileZilla, el cual está disponible para ordenadores con sistemas operativos Windows, MacOS y Linux.
Descarga el último archivo de instalación para tu sistema operativo desde la siguiente página:
https://filezilla-project.org/download.php?type=client
Para establecer una conexión de tu servidor con FileZilla y descargar la copia de los archivos de tu página web y la base de datos MySQL exportada a un ordenador local, sigue estas indicaciones:
- Inicia FileZilla.
- Introduce la dirección IP del servidor en el campo Servidor.
- Introduce el nombre de usuario root en el campo Nombre de usuario.
- Introduce la contraseña que hayas establecido en el campo Contraseña.
- Introduce el puerto 22 en el campo Puerto.
- Haz clic en Conexión rápida . Se establecerá la conexión con el servidor. Los directorios de tu cliente se mostrarán en el área de la izquierda. Los directorios de tu servidor aparecerán en la parte derecha.
- Crea un directorio en tu ordenador local.
- Abre el directorio raíz de tu servidor web.
- Selecciona el directorio raíz de tu servidor y, a continuación, cópialo en el directorio deseado de tu ordenador local mediante la función «arrastrar y soltar».
- Copia también los archivos o directorios de configuración necesarios en el directorio deseado de tu ordenador local mediante la función «arrastrar y soltar».
- Abre el directorio raíz.
- Selecciona la base de datos exportada. El nombre del archivo es dbdump.sql.gz. Después, copia el archivo en el directorio deseado de tu ordenador local mediante la función «arrastrar y soltar».
4) Instalar aplicaciones en el nuevo servidor
Antes de importar los archivos de la web y la base de datos exportada, debes instalar en tu nuevo servidor las aplicaciones que también utilizabas en tu servidor anterior.
Importante
Comprueba los requisitos necesarios del sistema antes de la instalación. También puedes informarte sobre posibles problemas de compatibilidad en la página web de la entidad fabricante del software.
a) Instalación de Apache, MySQL/MariaDB y PHP
Consulta las instrucciones sobre cómo instalar Apache, MySQL/MariaDB y PHP en los siguientes artículos:
Instalar un stack de LAMP en un servidor con CentOS Stream 9
b) Instalación de Nginx
Consulta las instrucciones sobre cómo instalar Nginx en el siguiente enlace:
c) Instalación de Plesk
Consulta las instrucciones sobre cómo instalar Plesk en los siguientes artículos:
d) Instalación de WordPress
Consulta las instrucciones sobre cómo instalar WordPress en un servidor en la documentación de WordPress que puedes encontrar en la siguiente página:
5) Proteger el sistema operativo y aplicaciones
Personaliza todos los ajustes y configuraciones de seguridad necesarios del nuevo servidor. Esto se aplica tanto al sistema operativo como a las aplicaciones instaladas.
En el siguiente artículo encontrarás información sobre algunas medidas de seguridad con importancia fundamental:
Información importante sobre la seguridad de tu servidor Linux (parte 2 de 2)
6) Importar los archivos de la página web
a) Apache
- Establece una conexión SSH con tu nuevo servidor e inicia sesión como administrador.
- Abre también Filezilla.
- Copia los datos y archivos de configuración de los que se ha hecho copia de seguridad con FileZilla mediante la función «arrastrar y soltar» en los directorios correspondientes de tu nuevo servidor.
- Comprueba los archivos de configuración, así como las rutas y los ajustes específicos del entorno del servidor anterior y ajústalos si es necesario.
Para reiniciar Apache, cambia al programa con el que se ha establecido la conexión SSH e introduce el siguiente comando:
[root@localhost ~]# sudo /etc/init.d/apache2 restart
- Comprueba los scripts que estás utilizando y ajústalos si es necesario.
- Comprueba la página web y la configuración.
b) Nginx
- Establece una conexión SSH con tu nuevo servidor e inicia sesión como administrador.
- Abre también Filezilla.
- Copia los datos de la copia de seguridad y los archivos de configuración con FileZilla mediante la función «arrastrar y soltar» en los directorios correspondientes de tu nuevo servidor.
- Comprueba los archivos de configuración, así como las rutas y los ajustes que estaban alineados con el entorno del servidor anterior y ajústalos si es necesario.
Para reiniciar Nginx, cambia al programa con el que se ha establecido la conexión SSH e introduce el siguiente comando:
[root@localhost ~]# sudo systemctl restart nginx
- Comprueba los scripts que estás utilizando y ajústalos si es necesario.
- Comprueba la página web y la configuración.
c) Importar la base de datos MySQL
- Abre FileZilla.
- Copia la base de datos exportada al directorio correspondiente de tu nuevo servidor mediante la función «arrastrar y soltar».
- Cambia al programa que has utilizado para establecer la conexión SSH.
- Abre el directorio en el que se encuentra la base de datos exportada.
Para restaurar tus datos, ejecuta el comando mysql según el esquema siguiente. Sustituye los marcadores de posición en mayúscula por los datos de acceso de la base de datos en la que deseas restaurar los datos.
gunzip -c NOMBRE_DE_ARCHIVO | mysql --user=NOMBRE_DE_USUARIO --password=CONTRASEÑA BASE DE DATOS
- Comprueba la configuración de seguridad de tu base de datos MySQL.
7) Trasladar un blog de WordPress
Consulta las instrucciones sobre cómo migrar tu blog de WordPress en la siguiente página:
Migración WordPress: instrucciones para cambiar de servidor paso a paso
Contenido
- 1) Identificar los archivos de la página web
- 2) Hacer una copia de seguridad de la base de datos MySQL
- 3) Guardar los archivos de tu página web y la base de datos MySQL exportada localmente en tu ordenador
- 4) Instalar aplicaciones en el nuevo servidor
- 5) Proteger el sistema operativo y aplicaciones
- 6) Importar los archivos de la página web
- 7) Trasladar un blog de WordPress
- Arriba