es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Buscar y reemplazar URL en la base de datos MYSQL de Drupal 9.

Necesito mover un sitio web de Drupal 9 a un servidor diferente y muchos enlaces tienen la antigua URL del servidor antiguo. Normalmente, para WordPress, utilizo esta herramienta: https://github.com/interconnectit/Search-Replace-DB https://interconnectit.com/search-and-replace-for-wordpress-databases/

Subes eso al servidor y se ejecuta un script para buscar tu cadena y luego reemplazarla con la nueva cadena. Lamentablemente, esta herramienta no funciona con Drupal.

Intenté hacer una búsqueda y reemplazo regular en VS Code con:

Buscar //old.url.com
Reemplazar con //new.url.com

Encontró todos los //old.url.com pero después de importar la base de datos, todavía hay algunos enlaces que no redirigen a la nueva URL, uno de ellos es /user, que es la página de inicio de sesión. Si voy a new.url.com/user, redirige a old.url.com/user

¿Hay alguna manera de hacer una búsqueda y reemplazo en la base de datos para reemplazar la URL antigua?

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Como experto en IT especializado en MySQL y Drupal 9, hay algunas formas de actualizar las URL en la base de datos:

    1. Usar el comando Drush. Drush es una herramienta de línea de comandos para Drupal que se puede utilizar para actualizar las URL de la base de datos. Para usar Drush, conéctese a su servidor y navegue hasta la raíz web de Drupal. Luego ejecute el siguiente comando:
    drush sql-query "UPDATE `url_alias` SET `alias` = REPLACE(`alias`, 'old.url.com', 'new.url.com');"
    

    Este comando actualizará todos los alias de URL en la base de datos para usar la nueva URL.

    1. Usar un comando de MySQL. Si tiene acceso a la base de datos MySQL, puede ejecutar un comando para actualizar todas las URL. El comando se vería así:
    UPDATE `nombre_tabla` SET `nombre_columna` = REPLACE(`nombre_columna`, 'old.url.com', 'new.url.com');
    

    Reemplace nombre_tabla con el nombre de la tabla de la base de datos de Drupal que contiene las URL que desea actualizar, y reemplace nombre_columna con el nombre de la columna en esa tabla que contiene las URL.

    1. Usar un módulo de Drupal. El módulo Pathologic para Drupal proporciona una forma de actualizar las URL en el contenido a medida que se renderiza. Esto puede ser útil si tiene mucho contenido que necesita tener sus URL actualizadas. Una vez que Pathologic esté instalado y configurado, puede ejecutar una actualización masiva para actualizar todas las URL de contenido.

Comments are closed.