Come migrare un'installazione HTTPS di WordPress su localhost?

30 giu 2017, 02:52:30
Visualizzazioni: 15.5K
Voti: 8

Ho migrato un sito da un server live a localhost utilizzando il plugin WP Migrate DB. Ho già eseguito questo processo diverse volte e tutto è sempre andato bene. Questa volta però ho migrato un sito da una connessione https e non riesco ad accedere al sito sul mio localhost. Mi viene restituito il seguente errore:

Questo sito non può fornire una connessione sicura

localhost ha inviato una risposta non valida.
ERR_SSL_PROTOCOL_ERROR

Suppongo che nel backend di WordPress devo modificare qualcosa nel database, oppure nel Pannello di controllo > Impostazioni > scheda Generale.

Al momento però non riesco ad accedere al sito, quindi penso che dovrò farlo tramite il database?

Qualsiasi aiuto o assistenza sarebbe fantastico. Non so bene da dove iniziare.

Paul.

0
Tutte le risposte alla domanda 5
4

Questo accade perché i valori site_url e homeurl della tua installazione originale sono impostati su HTTPS nel database, quindi non puoi accedere al tuo sito web su localhost a meno che tu non:

  1. Modifichi questi valori in non-ssl
  2. Installi un certificato SSL su localhost

Spiegherò solo il primo caso poiché l'installazione di un certificato esula dallo scopo di questa community.

Per farlo, hai 2 opzioni.

Modifica direttamente il file SQL scaricato

Apri l'esportazione MySQL che hai appena scaricato dal tuo server. Cerca wp_options e troverai una riga nel tuo database simile a questa:

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

Le 2 righe sotto questa sono siteurl e homeurl. Modifica entrambi i loro valori in http://localhost/. Fai attenzione agli apici e alle virgole! Quindi, le prime 3 righe appariranno così:

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

Poi carica il tuo file SQL. Fatto.

Aggiorna i valori tramite PHPMyAdmin

Se hai PHPMyAdmin installato sul tuo localhost, o hai abbastanza conoscenza per aggiornare direttamente le tabelle via riga di comando, procedi con questo metodo.

Accedi al tuo database tramite PHPMyAdmin. Dal menu di navigazione a sinistra, scegli il database corretto. Ora, seleziona la tabella wp_options dalla sezione destra.

Di nuovo, i primi due valori saranno siteurl e homeurl, che puoi semplicemente aggiornare a http://localhost/ senza preoccuparti di fare errori modificando il file SQL originale.

30 giu 2017 03:45:10
Commenti

Grazie Jack, ho seguito il secondo dei tuoi due suggerimenti e ora è tutto a posto. Apprezzo il tuo aiuto.

pjk_ok pjk_ok
30 giu 2017 05:06:47

Un cerca e sostituisci con lo script SearchReplaceDB2 di interconnetit per passare da https a http sarebbe anche una buona opzione. Questo può essere fatto anche con wp-cli.

xvilo xvilo
30 giu 2017 09:49:45

Oltre al caso descritto qui, dovresti rinominare wp-content/plugins/really-simple-ssl per disattivarlo.

Dunot Dunot
7 ago 2018 10:15:33

@Dunot disattivare simple SSL ha funzionato per me. Grazie

RTXGamer RTXGamer
10 ott 2021 16:52:42
0

Nella tabella wp_options, troverai due righe che contengono l'URL del sito. Modifica quei due valori.

Tuttavia, i tuoi media e altri collegamenti alle pagine interne potrebbero dover essere regolati. Ecco perché lascio che il fantastico plugin WP Clone (https://wordpress.org/plugins/wp-clone-by-wp-academy/) faccia tutto il lavoro per me. Basta installare il plugin sul sistema sorgente, fare il backup, poi installare il plugin sul sistema di destinazione e ripristinare.

Ottimo plugin, elimina tutto il lavoro necessario per spostare (clonare) un sito. A volte devo eseguire il ripristino due volte (il primo fallisce per un motivo misterioso), ma il tentativo successivo funziona perfettamente. Tutti i dati, utenti, contenuti, ecc. vengono trasferiti in modo impeccabile.

30 giu 2017 03:40:10
0

Per quanto mi riguarda, la situazione era diversa dalle altre risposte. Il mio database era configurato correttamente su http://localhost ma avevo installato un plugin per gestire SSL (Really Simple SSL).

Quindi ho rinominato la cartella /wp-content/plugins/really-simple-ssl con un nome diverso e ha funzionato.

Per accedere a /wp-admin senza SSL, è necessario modificare il file /wp-config.php e impostare FORCE_SSL_ADMIN su false.

23 dic 2019 10:45:44
4

Ho riscontrato questo problema. Ecco cosa ho fatto:

  1. rimosso il plugin wp-security
  2. rimosso la definizione FORCE_SSL dal wp-config.php
  3. pulito la cache del browser
  4. modificato i valori site_url e home_url nella tabella wp-options
  5. aggiornato il file .htaccess con quello predefinito di WordPress

Niente di tutto questo ha funzionato.

Alla fine la soluzione è stata:

Rimuovere definitivamente il file .htaccess ha risolto il problema.

Spero che questo possa aiutare qualcuno a risolvere lo stesso problema.

8 giu 2020 07:12:26
Commenti

Grazie mille!!!! la tua risposta merita di salire direttamente in cima! Mi hai salvato il culo, amico!!!! Grazie!!!!!!

neoswf neoswf
9 feb 2022 04:36:09

felice di aver aiutato.

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

@armah - in realtà erano delle regole specifiche all'interno del file a causare il problema. Commentarle ha risolto il problema. Grazie per il tuo aiuto!

neoswf neoswf
9 feb 2022 14:37:49

benvenuto bro :) .. happy coding <3

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

Puoi farlo rapidamente con queste 2 costanti offerte da WordPress.

Aggiungile all'inizio del file wp-config.php e dopo l'apertura dei tag <?php.

define ('WP_HOME', 'http://localhost/nome-cartella-wordpress' );
define ('WP_SITEURL', 'http://localhost/nome-cartella-wordpress' );
13 mag 2018 21:44:53
Commenti

In realtà avevo questa costante, che aggiungeva https agli URL!!!!! Ho risolto quel problema e ha funzionato!

neoswf neoswf
9 feb 2022 14:53:29