---
title: "Creare una copia del sito Prestashop di produzione per fare test"
id: "428"
type: "post"
slug: "creare-una-copia-del-sito-prestashop"
published_at: "2026-07-08T06:27:30+00:00"
modified_at: "2026-07-08T10:06:55+00:00"
url: "https://pierluigipapeschi.com/creare-una-copia-del-sito-prestashop/"
markdown_url: "https://pierluigipapeschi.com/creare-una-copia-del-sito-prestashop.md"
excerpt: "Durante lo sviluppo dei siti web come Prestashop, nuovi o da rivedere, è altamente sconsigliato lavorare sul sito di produzione (quello che gli utenti navigano normalmente), bensì conviene fare una copia di quello stesso sito e fare tutte le modifiche..."
taxonomy_category:
  - "Prestashop"
---

Durante lo sviluppo dei siti web come Prestashop, nuovi o da rivedere, è altamente sconsigliato lavorare sul sito di produzione (quello che gli utenti navigano normalmente), bensì conviene fare una copia di quello stesso sito e fare tutte le modifiche e prove su quello. A maggior ragione bisogna procedere in questo modo per un e-commerce.

In questo articolo vediamo come procedere con un e-commerce Prestashop.

> Considera che normalmente si usa un sottodominio per i siti di sviluppo / test, come per esempio test.dominio.com, restyling.dominio.com, new.dominio.com, ecc.

## Prestashop & Console

[Prestashop](https://prestashop.it)
 è un software molto usato per creare siti di e-commerce, è [open source](https://pierluigipapeschi.com/open-source-cose-questo-sconosciuto/)
, è sviluppato per la tecnologia LAMP (Linux Apache Mysql PHP) e ha molta documentazione, supporto, plugin disponibile a costo contenuto.

Io prediligo la console per fare i trasferimenti dei vari file, ma è possibile farli anche usando **Filezilla FTP**. Vediamo con la console come procedere.

### Copia

Se la console del server di produzione consente di accedere anche alle cartelle del sito copia, allora “basterà” copiare i file dalla cartella principale a quella secondaria, ora mi spiego meglio.

Accediamo con il terminale del nostro computer (io uso un Mac, quindi ho terminal.app, ma in Windows va bene [Putty](https://putty.org/index.html)
) al server di origine (e se è lo stesso della copia siamo già pronti a operare).

Se invece i server o gli account sono distinti (devi accedere con utente diverso), in un’altra finestra del terminale accedi alla console del server di copia e vai al [capitolo successivo](#rsync)
.

Copiamo i file di origine con

```
cp -R cartella_di_origine/* cartella_di_destinazione/
```

L’opzione -R dice al comando di entrare ricorsivamente dentro alle cartelle e non fermarsi a quella indicata nel comando.

### Rsync

Se il server su cui andremo a copiare il sito online è diverso, per copiare i file ci sono molti modi, ma grazie alla console utilizzare rsync è la via più sicura per diversi motivi:

- è sicuro grazie al protocollo SSH
- è veloce grazie alla possibilità di comprimere i file prima di trasferirli
- è versatile perché se devi interrompere il trasferimento puoi riprenderlo quando vuoi
- è efficiente perché se lo rilanci più volte a distanza di poco tempo (o tanto…) trasferirà solo i file che hanno subito modifiche o sono stati creati rispetto a quelli presenti sul server di destinazione

Come vedi è un ottimo strumento, ma la cosa assolutamente necessaria è ovviamente avere accesso alla console dei 2 server di origine e di destinazione.

### Database

Per copiare e trasferire il database, prima dobbiamo esportarlo e Mysql ha un comando apposito chiamato mysqldump.

```
mysqldump -u USER -p NOME_DB -h NOME_O_IP_SERVER > db_copia.sql
```

Dove USER è il nome utente del database, -p dice che dobbiamo inserire la password dell’utente database una volta premuto invio, NOME_O_IP_SERVER va inserito se è diverso dal server della console, quindi se fosse localhost non va messo. Il resto del comando salva i dati nel file db_copia.sql

Bene adesso possiamo copiarlo o trasferirlo in una cartella della copia del sito, per esempio la cartella principale di dove abbiamo copiato i file in precedenza.

Per copiare i dati dal file .sql al database possiamo usare questo comando:

```
mysql -u USER -p -h NOME_O_IP_SERVER NOME_DB < NOME_FILE_DUMP_DEL_DB.sql
```

## Assemblaggio dei vari “pezzi”

Bene, adesso siamo a questo punto: abbiamo tutti i file e il database originale che “punta” al dominio principale.

### Tabelle

Prima cosa da fare è cambiare l’url del sito conosciuto da Prestashop nel database, la tabella indicata a contenere questo dato è

```
PRE_shop_url
```

dove PRE_ è il prefisso delle tabelle.

### Files

Aprire il file **parameters.php** dentro app/config e aggiornare i dati relativi al database, host, nome db, nome utente e password.

Pulire tutta la cache con il comando

```
rm -Rf var/cache/*
```

Se si riscontrano problemi ad accedere al sito o ad eseguire i file php, la prima cosa da fare è controllare il file **.htaccess**
