• User

    Trasferire sito da remoto in locale

    Ciao volevo esporvi il mio problema. Ho la necessità di fare delle prove ad un sito fatto in WP e per questo non volendo modificare l'originale volevo
    scaricarlo in locale e fare dei test da li.
    Per farlo ho visto che si possono utilizzare dei plugin (che non ho installato per mantenere "intatto" l'originale) oppure scaricarlo dall'FTP.
    Ho optato per l'FTP, per cui prima ho scaricato il sito completo e poi il database. Sono andato poi a configurare il wp-config.php con il nome del Db, username e psw
    corretti, ho modificato le 2 voci che "puntavano" al sito nella tabella wp_option con localhost al posto dell' URL.
    Purtoppo pero' il sito non si carica, o meglio si vede solo il testo della home ma non carica css,js, logo e immagini e menu. Sembra ci sia un problema di
    path dei puntamenti, ad esempio, non carica il logo che si trova sotto "mioSito/wp-content/x/y/img/logo.png" perchè come puntamento ha "wp-content/x/y/img/logo.png"(come se fosse ancora installato
    nella root).
    Premetto che ho anche modificato i permalink come nel sito ovvero "nome cartella" e che nella mia Htdocs ci sono piu' siti (funzionanti) ciascuno con la
    sua cartella.
    Ho provato anche a rifare l'installazione di WP per far prendere a lui i puntamenti ma non è andata a buon fine. A tal proposito vi chiedo:
    Come mai i puntamenti non sono corretti? dove ho sbagliato o cosa non ho fatto?
    Quando si fa l'installazione di Wp e chiede di immettere Dbname,user e password sono quelle del Db in locale (root per intenderci) o sono quelle che ci sono sull'host
    (e quindi le utenze create nel db)?
    Grazie a chi risponderà.


  • Moderatore

    Ciao
    mi spiace nono poterti aiutare ma io sono fortemente dell'idea che lavorare direttamente online sia la cosa migliore. Inoltre se hai Cpanel e hai installato Installatron puoi creare una copia del sito e lavorare li. Per non farla vedere ai motori li blocchi da htaccess.


  • User Attivo

    Ciao, conosco poco WP ma, da quanto ne so, WP ha il maledetto vizio di memorizzare i percorsi assoluti nel DB, oltre a un mare di altri difetti.

    Quindi dovresti andare a sostituire nel database (meglio direttamente dal file SQL) tutti i percorsi http(s)://www.tuodominio.ext/cartella/immagine.jpg con http(s)://localhost/percorsosito/cartella/immagine.jpg (o qualsiasi altro nuovo percorso).


  • User Attivo

    Si credo che WP salvi il path assoluto nel DB.

    Se così fosse piccolo suggerimento, ti incollo il codice della query per modificare al volo tutti i percorsi assoluti

    
    UPDATE tabella SET campo = REPLACE(campo, 'vecchia_stringa', 'nuova_stringa');
    
    

    Sostituisci tabella con il nome della tabella, campo con il nome della colonna dove si trovano i dati da modificare, vecchia_stringa e nuova_stringa con rispettivamente vecchio e nuovo path.

    Backup prima di fare modifiche!


  • User Attivo

    @flaviors200 said:

    Si credo che WP salvi il path assoluto nel DB.

    Se così fosse piccolo suggerimento, ti incollo il codice della query per modificare al volo tutti i percorsi assoluti

    >
    UPDATE tabella SET campo = REPLACE(campo, 'vecchia_stringa', 'nuova_stringa');
    
    >```
    
    Sostituisci **tabella** con il nome della tabella, **campo** con il nome della colonna dove si trovano i dati da modificare, **vecchia_stringa** e **nuova_stringa** con rispettivamente vecchio e nuovo path.
    
    Backup prima di fare modifiche!
    
    Mi sa che fa prima con un Search/Replace nel file di dump del DB, almeno non deve sapere in quale campo si trovano le stringhe da sostituire :)

  • User Attivo

    @altraSoluzione said:

    Mi sa che fa prima con un Search/Replace nel file di dump del DB, almeno non deve sapere in quale campo si trovano le stringhe da sostituire 🙂

    Vero non ci avevo pensato 🙂


  • User

    @altraSoluzione said:

    Mi sa che fa prima con un Search/Replace nel file di dump del DB, almeno non deve sapere in quale campo si trovano le stringhe da sostituire 🙂

    Grazie, ho provato sostituendo tutte le entry per quanto riguarda i files non i DB.....
    Dove trovo il file dump? come faccio?


  • User Attivo

    @bebop said:

    Grazie, ho provato sostituendo tutte le entry per quanto riguarda i files non i DB.....
    Dove trovo il file dump? come faccio?

    Il dump è una semplice esportazione del DB. Se hai trasferito il sito da remoto a locale dovresti avere il file .sql con il quale hai importato il database.
    Edita quel file con Notepad, Notepad++, PSpad o qualsiasi altro editor (dopo averne fatta una copia!!!), fai un search/replace come ho scritto prima, salvalo e poi importalo in mysql.


  • User

    Niente ho fatto tutte le sostituzioni del caso, ma purtroppo il problema continua a esserci ❌?


  • User Attivo

    @bebop said:

    Niente ho fatto tutte le sostituzioni del caso, ma purtroppo il problema continua a esserci ❌?

    Prova a controllare anche se ci sono dei percorsi assoluti per i file, per esempio /var/www/html/.../cartellasito se eri in Linux.

    Guarda anche il log di Apache se ti indica qualche problema.