Cómo migrar una instalación HTTPS de WordPress a localhost

30 jun 2017, 02:52:30
Vistas: 15.5K
Votos: 8

He migrado un sitio desde un servidor en vivo a localhost usando el plugin WP Migrate DB. He realizado este proceso varias veces antes y todo ha funcionado bien. Sin embargo, esta vez he migrado un sitio desde una conexión https y no puedo acceder al sitio en mi localhost. Me aparece el siguiente error:

Este sitio no puede proporcionar una conexión segura

localhost envió una respuesta no válida.
ERR_SSL_PROTOCOL_ERROR

Supongo que en el backend de WordPress necesito cambiar algo, ya sea en la base de datos o en el Tablero > Ajustes > pestaña General.

Actualmente no puedo acceder al sitio, así que creo que tendré que hacerlo a través de la base de datos.

Cualquier ayuda o asistencia sería genial. No estoy seguro por dónde empezar.

Paul.

0
Todas las respuestas a la pregunta 5
4

Esto ocurre porque los valores de site_url y homeurl de tu instalación original están configurados como HTTPS en la base de datos, por lo que no podrás acceder a tu sitio web en localhost a menos que:

  1. Cambies estos valores a no-SSL
  2. Instales un certificado SSL en localhost

Solo explicaré el primer caso ya que la instalación de un certificado está fuera del alcance de esta comunidad.

Para hacer esto, tienes 2 opciones.

Editar directamente el archivo SQL descargado

Abre la exportación de MySQL que acabas de descargar de tu servidor. Busca wp_options y encontrarás una línea en tu base de datos como esta:

INSERT INTO `wp_options` (`option_id`, `option_name`, `option_value`, `autoload`) VALUES

Las 2 líneas debajo de esta son siteurl y homeurl. Cambia ambos valores a http://localhost/. ¡Presta atención a las comillas y comas! Entonces, las primeras 3 líneas se verán así:

INSERT INTO `wp_options` (`option_id`, `option_name`, `option_value`, `autoload`) VALUES
(1, 'siteurl', 'http://localhost/', 'yes'),
(2, 'home', 'http://localhost', 'yes'),

Luego sube tu archivo SQL. Eso es todo.

Actualizar los valores mediante PHPMyAdmin

Si tienes PHPMyAdmin instalado en tu localhost, o tienes suficiente conocimiento para actualizar las tablas directamente mediante la línea de comandos, procede con este método.

Inicia sesión en tu base de datos mediante PHPMyAdmin. Desde el menú de navegación izquierdo, elige la base de datos correcta. Ahora, selecciona la tabla wp_options desde la sección derecha.

De nuevo, los dos primeros valores serán siteurl y homeurl, que puedes actualizar simplemente a http://localhost/ sin preocuparte por cometer un error al editar el archivo SQL original.

30 jun 2017 03:45:10
Comentarios

Gracias Jack, hice lo último de tus dos descripciones y está todo listo. Aprecio tu ayuda.

pjk_ok pjk_ok
30 jun 2017 05:06:47

Una búsqueda y reemplazo con el script SearchReplaceDB2 de interconnetit para cambiar de https a http también sería una buena opción. Esto también se puede lograr con wp-cli.

xvilo xvilo
30 jun 2017 09:49:45

Además del caso descrito aquí, deberías renombrar wp-content/plugins/really-simple-ssl para desactivarlo.

Dunot Dunot
7 ago 2018 10:15:33

@Dunot desactivar simple SSL funcionó para mí. Gracias

RTXGamer RTXGamer
10 oct 2021 16:52:42
0

En la tabla wp_options, encontrarás dos filas que contienen la URL del sitio. Debes cambiar esos dos valores.

Sin embargo, es posible que tengas que ajustar los enlaces de tus medios y otras páginas internas. Por eso dejo que el excelente plugin WP Clone (https://wordpress.org/plugins/wp-clone-by-wp-academy/) haga todo el trabajo por mí. Simplemente instalas el plugin en el sistema fuente, haces una copia de seguridad, luego instalas el plugin en el sistema de destino y restauras.

Un plugin fantástico que elimina todo el trabajo de mover (clonar) un sitio. A veces tengo que hacer la restauración dos veces (la primera falla por un motivo misterioso), pero el reintento funciona perfectamente. Todos los datos, usuarios, contenido, etc. se migran de forma impecable.

30 jun 2017 03:40:10
0

En mi caso, fue diferente a las otras respuestas. Mi base de datos estaba configurada correctamente a http://localhost pero tenía un plugin instalado para gestionar SSL (Really Simple SSL).

Así que renombré la carpeta /wp-content/plugins/really-simple-ssl a algo diferente y funcionó.

Y para acceder a /wp-admin sin SSL, necesitas cambiar tu archivo /wp-config.php y establecer FORCE_SSL_ADMIN a false.

23 dic 2019 10:45:44
4

Me he encontrado con este problema. Lo que hice fue:

  1. Eliminar el plugin wp-security
  2. Eliminar la definición FORCE_SSL de wp-config.php
  3. Limpiar la caché del navegador
  4. Cambiar las URLs site_url y home en la tabla wp-options
  5. Actualizar el .htaccess con el archivo .htaccess por defecto de WordPress

Nada funcionó.

Finalmente lo que hice fue:

Eliminar el archivo .htaccess permanentemente funcionó correctamente para mí.

Espero que esto ayude a alguien a solucionar este problema.

8 jun 2020 07:12:26
Comentarios

¡¡¡Muchas gracias!!!! Tu respuesta merece estar en primer lugar. ¡¡¡Me salvaste el trasero, hermano!!!! ¡¡¡Gracias!!!!!!

neoswf neoswf
9 feb 2022 04:36:09

Me alegra que te haya ayudado.

Arman H Arman H
9 feb 2022 07:04:17

@armah - en realidad, reglas específicas dentro del archivo causaron el problema. Al comentarlas se resolvió. ¡Gracias por tu ayuda!

neoswf neoswf
9 feb 2022 14:37:49

bienvenido bro :) .. feliz código <3

Arman H Arman H
9 feb 2022 18:27:14
1

Puedes hacerlo rápidamente con estas 2 constantes que ofrece WordPress.

Debes agregarlas al inicio del archivo wp-config.php, justo después de las etiquetas de apertura <?php.

define ('WP_HOME', 'http://localhost/nombre-de-carpeta-wordpress' );
define ('WP_SITEURL', 'http://localhost/nombre-de-carpeta-wordpress' );
13 may 2018 21:44:53
Comentarios

¡¡¡De hecho tenía esta constante, que añadía https a las URLs!!!!! Lo corregí y eso resolvió mi problema.

neoswf neoswf
9 feb 2022 14:53:29