Siti web · 6 min read · Feb 14, 2026
Mantenere siti web remoti con sitecopy su Ubuntu 16.04
sitecopy è uno strumento per copiare siti web memorizzati localmente su un server web remoto (utilizzando FTP o WebDAV). Ti aiuta a mantenere il sito remoto sincronizzato con la tua copia locale caricando file locali modificati e eliminando file remoti che sono stati eliminati sul computer locale. Questo tutorial mostra come puoi gestire il tuo sito web remoto dal tuo desktop locale Ubuntu 16.04 con sitecopy.
1 Nota Preliminare
Sto usando il nome utente till sul mio desktop locale Ubuntu (sono connesso sul mio desktop Linux locale come quell’utente - per favore non accedere come root). I file per il sito web remoto example.com sono memorizzati nella directory /home/till/sites/example.com/ sul computer locale. La radice del documento remoto è /var/www/example.com/web/.
Puoi usare sitecopy con FTP e WebDAV, quindi dovresti avere un account FTP o WebDAV sul server remoto. Sto usando il nome utente FTP defaulttill e la password howtoforge qui.
Il sito web remoto che utilizzo per questi esempi è stato creato con ISPConfig. Ma qualsiasi sito a cui hai accesso FTP o WebDAV funzionerà.
2 Installazione di sitecopy
Sitecopy può essere installato sul desktop locale come segue (abbiamo bisogno dei privilegi di root, quindi usiamo sudo):
sudo apt-get -y install sitecopyDovresti ora dare un’occhiata alla pagina man di sitecopy per familiarizzare con le sue opzioni:
man sitecopy3 Configurazione di sitecopy
Vai alla tua directory home sul desktop locale…
cd ~… e crea la directory .sitecopy con permessi di 700 (sitecopy utilizza quella directory per memorizzare i dettagli dei file):
mkdir -m 700 .sitecopySuccessivamente, crea il file di configurazione di sitecopy .sitecopyrc:
touch .sitecopyrc
chmod 600 .sitecopyrcApri il file…
nano .sitecopyrc… e compila la configurazione per il sito example.com. Ecco due esempi, uno per FTP…
site example.com
server example.com
username defaulttill
password howtoforge
local /home/till/sites/example.com/
remote ~/web/
exclude *.bak
exclude *~… e uno per WebDAV:
site example.com
server example.com
protocol webdav
username defaulttill
password howtoforge
local /home/till/sites/example.com/
remote /var/www/example.com/web/
exclude *.bak
exclude *~(Puoi definire una strofetta per ogni sito web che desideri gestire con sitecopy.)
La direttiva site deve essere seguita da un nome per il sito web - puoi sceglierne uno liberamente, ad esempio example.com o mysite. Questo nome sarà utilizzato in seguito nei comandi di sitecopy. Le seguenti opzioni di configurazione che appartengono a quel sito devono essere rientrate!
La maggior parte delle seguenti opzioni di configurazione sono autoesplicative. Il protocollo predefinito è FTP; se desideri utilizzare WebDAV, specifica il protocollo webdav. La direttiva locale contiene il percorso locale della copia del sito web, remoto contiene il percorso del sito web sul server remoto - può essere assoluto o relativo. Se il tuo utente è chrooted (come è normalmente il caso con gli utenti FTP), dovresti usare un percorso relativo (come ~/ o ~/web). Altrimenti usa un percorso assoluto.
Le righe di esclusione sono opzionali, sono qui solo per dimostrare come puoi escludere file dalla gestione di sitecopy.
Puoi scoprire di più sulla configurazione di sitecopy nella sua pagina man:
man sitecopy4 Primo Utilizzo
Prima di utilizzare sitecopy per la prima volta, devi decidere quale dei seguenti tre scenari corrisponde alla tua situazione:
- Sito remoto esistente e copia locale, entrambi sincronizzati.
- Sito remoto esistente, nessuna copia locale.
- Nuovo sito remoto, copia locale esistente.
4.1 Sito Remoto Esistente e copia locale, entrambi sincronizzati
Se sia il sito remoto che la copia locale esistono e sono sincronizzati, esegui
sitecopy --catchup example.comper far credere a sitecopy che il sito locale sia esattamente lo stesso della copia remota. Sostituisci example.com con il nome del sito che utilizzi nel file .sitecopyrc.
till@ubuntu-desktop:~$ sitecopy --catchup example.com
sitecopy: Catching up site `example.com' (on example.com in ~/web/)
sitecopy: All the files and and directories are marked as updated remotely.4.2 Sito Remoto Esistente, nessuna copia locale
Se non hai una copia locale del sito web remoto esistente, esegui
sitecopy --fetch example.comprima in modo che sitecopy recuperi l’elenco dei file dal server remoto (sostituisci example.com con il nome del sito che utilizzi nel file .sitecopyrc):
till@ubuntu-desktop:~$ sitecopy --fetch example.com
sitecopy: Fetching site `example.com' (on example.com in ~/web/)
File: error/503.html - size 1906
File: error/502.html - size 1881
File: error/500.html - size 1851
File: error/405.html - size 1810
File: error/404.html - size 1806
File: error/403.html - size 1809
File: error/401.html - size 1806
File: error/400.html - size 1792
File: stats/.htaccess - size 128
File: robots.txt - size 14
File: index.html - size 1861
File: favicon.ico - size 7358
File: .htaccess - size 26
Directory: error/
Directory: stats/
sitecopy: Fetch completed successfully.Quindi esegui
sitecopy --synch example.comper aggiornare il sito locale dalla copia remota.
sitecopy: Synchronizing site `example.com' (on example.com in ~/web/)
Creating error/: done.
Creating stats/: done.
Downloading error/503.html: [.] done.
Downloading error/502.html: [.] done.
Downloading error/500.html: [.] done.
Downloading error/405.html: [.] done.
Downloading error/404.html: [.] done.
Downloading error/403.html: [.] done.
Downloading error/401.html: [.] done.
Downloading error/400.html: [.] done.
Downloading stats/.htaccess: [.] done.
Downloading robots.txt: [.] done.
Downloading index.html: [.] done.
Downloading favicon.ico: [.] done.
Downloading .htaccess: [.] done.
sitecopy: Synchronize completed successfully.4.3 Nuovo Sito Remoto, Copia Locale Esistente
Se la copia locale esiste, ma hai un sito remoto vuoto, esegui
sitecopy --init example.comprima per inizializzare il sito. Sostituisci example.com con il nome del sito che utilizzi nel file .sitecopyrc.
till@ubuntu-desktop:~$ sitecopy --init example.com
sitecopy: Initializing site `example.com' (on example.com in ~/web/)
sitecopy: All the files and directories are marked as NOT updated remotely.
Quindi esegui:
sitecopy --update example.comper caricare la copia locale sul sito remoto:
till@ubuntu-desktop:~$ sitecopy --update example.com
sitecopy: Updating site `example.com' (on example.com in ~/web/)
Creating stats/: done.
Creating data/: done.
Creating error/: done.
Uploading stats/.htaccess: [.] done.
Uploading data/index.html: [.] done.
Uploading error/403.html: [.] done.
Uploading error/401.html: [.] done.
Uploading error/404.html: [.] done.
Uploading error/503.html: [.] done.
Uploading error/400.html: [.] done.
Uploading error/502.html: [.] done.
Uploading error/405.html: [.] done.
Uploading error/500.html: [.] done.
Uploading index.html: [.] done.
Uploading robots.txt: [.] done.
Uploading .htaccess: [.] done.
Uploading favicon.ico: [.] done.
sitecopy: Update completed successfully.5 Utilizzo di sitecopy
Dopo, l’utilizzo di sitecopy è davvero semplice. Puoi lavorare con la tua copia locale e aggiornare, creare ed eliminare file. Un primo, ma facoltativo passo è eseguire
sitecopy example.comper scoprire quali file sono cambiati localmente (sostituisci example.com con il nome del sito che utilizzi nel file .sitecopyrc):
till@ubuntu-desktop:~$ sitecopy example.com
sitecopy: Showing changes to site `example.com' (on example.com in ~/web/)
* Questi elementi sono stati aggiunti dall'ultimo aggiornamento:
info.php
sitecopy: Il sito remoto ha bisogno di aggiornamenti (1 elemento da aggiornare).Per sincronizzare il tuo sito web remoto con la tua copia locale (cioè caricare file nuovi e modificati sul server remoto ed eliminare file sul server remoto che sono stati eliminati localmente), esegui semplicemente
sitecopy --update example.comtill@ubuntu-desktop:~$ sitecopy --update example.com
sitecopy: Updating site `example.com' (on example.com in ~/web/)
Uploading info.php: [] done.
sitecopy: Update completed successfully.Ecco fatto! Divertiti con sitecopy!
6 Link
- sitecopy: http://www.manyfish.co.uk/sitecopy/
- Ubuntu: http://www.ubuntu.com/
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.