error de conexión de DB después de copiar una instancia de WordPress Multisite en una segunda ubicación

9

Aquí está mi configuración. Tengo una instancia de varios sitios que se ejecuta en enlace , y quiero realizar el desarrollo y la organización. Mover una instancia multisitio existente de WP a localhost es una pesadilla, así que haré dev en una ubicación de ensayo.

Configuré enlace para que apunte al directorio / public_html / staging / de la cuenta de alojamiento y copié todos los archivos WP de Mi raíz en el directorio / staging /. También copié los archivos de la base de datos (volcado de SQL, importé las tablas a una nueva base de datos) y cambié el archivo wp-config.php para que apunte a la nueva base de datos.

Después de ejecutar SQL para cambiar los registros de la base de datos, también modifico esta línea en el archivo wp-config.php:

/** Turning on WordPress MU, new in 3.0 */
define( 'MULTISITE', true );
define( 'SUBDOMAIN_INSTALL', false );
$base = '/';
define( 'DOMAIN_CURRENT_SITE', 'example.com' ); // <- I change this line
define( 'PATH_CURRENT_SITE', '/' );
define( 'SITE_ID_CURRENT_SITE', 1 );
define( 'BLOG_ID_CURRENT_SITE', 1 );

Cambiado a:

define( 'DOMAIN_CURRENT_SITE', 'staging.example.com' ); // <- now changed

Cuando carga enlace , obtengo ... Error establishing database connection !

Verifiqué y tripliqué el nombre de usuario y la contraseña, me aseguré de que el usuario tuviera todos los privilegios en la nueva base de datos provisional y dejé el DBHOST como 'localhost' (aunque lo cambié a staging.example.com no ayudó, tampoco).

¿Por qué falla la conexión a la base de datos? ¿Nadie? (Gracias por su ayuda de antemano).

NB: enlace funciona bien ejecutando configuraciones de conexión db muy similares, solo con una base de datos diferente , por lo que no es un problema que el servidor de base de datos esté inactivo.

    
pregunta Jason Rhodes 18.07.2011 - 14:53

3 respuestas

2

Una idea: cuando voy a www.example.com/staging/wp-admin, me redirige automáticamente a www.example.com/wp-admin

¿La redirección de staging.example.com a example.com/staging puede estar en conflicto con la instalación existente?

ACTUALIZACIÓN: parece que podría estar relacionado con problemas de .htaccess y referencias de dominio complicadas en la base de datos

Desde el Códice WP:

  

Moviendo WordPress Multisite

     

Multisite es mucho más complicado de   mover, ya que la base de datos en sí tiene múltiples referencias al servidor   nombre, así como las ubicaciones de la carpeta.

     

La mejor manera de mover Multisite es mover los archivos, editar el   .htaccess y wp-config.php (si el nombre de la carpeta contiene Multisite   cambiado), y luego editar manualmente la base de datos. Buscar por todos   instancias de su nombre de dominio, y cámbielas según sea necesario. Este paso   aún no se puede automatizar fácilmente. Si estás moviendo Multisite desde uno   carpeta a otra, deberá asegurarse de editar los wp_blogs   entradas para cambiar el nombre de la carpeta correctamente.

    
respondido por el timshutes 19.07.2011 - 23:18
6

Lo resolví & funcionó :)

En la tabla wp_blogs ,

Estructura antigua era

Domain : localhost/smart_facility_linux
Path : /

Pero lo cambié a para que funcione de la siguiente manera:

Para el sitio raíz:

Domain : localhost
Path : /smart_facility_linux/

Para el subsitio 1 (cualquier subsitio en el sitio principal, acabo de dar un ejemplo):

Domain : localhost
Path : /smart_facility_linux/subsite1/
    
respondido por el Pratik C Joshi 17.04.2015 - 12:33
2

En realidad, solo hay una forma de realizar una transferencia fácil de dominio o host que he encontrado. Funciona perfectamente para mí en instalaciones de varios sitios y en varios sitios.

  1. Exporte su base de datos a un archivo .sql. (Yo uso PHPMyAdmin para esto)
  2. Cree una nueva copia del archivo que se editará con un nombre ligeramente diferente.
  3. Abra el archivo en su editor de texto preferido > (gedit por ejemplo)
  4. Ejecutar una búsqueda / reemplazo en el dominio Y la ruta absoluta (/ home / username / public_html / to / home / username / public_html /) desde la producción hasta el desarrollo.
  5. Guarda el archivo.
  6. Copie la instalación completa en su directorio de desarrollo.
  7. Agregue la siguiente línea a su archivo wp-config.php:

    define ('RELOCATE', true);

  8. Inicia sesión y guarda la configuración de los enlaces permanentes.

  9. Elimine la regla de definición que puso en su wp-config.php.

respondido por el Jeff Sebring 22.07.2011 - 12:49

Lea otras preguntas en las etiquetas