GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Maintenir des sites Web distants avec Sitecopy sur Ubuntu 18.04

Sitecopy est un outil permettant de copier des sites Web stockés localement sur un serveur Web distant (via FTP ou WebDAV). Il vous aide à synchroniser le site distant avec votre copie locale en téléchargeant les fichiers locaux modifiés et en supprimant les fichiers distants supprimés sur l'ordinateur local. Ce didacticiel vous montre comment gérer votre site distant à partir de votre bureau local Ubuntu 18.04 avec Sitecopy.

1 Remarque préliminaire

J'utilise le nom d'utilisateur jusqu'à sur mon bureau Ubuntu local (je suis connecté à mon bureau Linux local en tant qu'utilisateur - veuillez ne pas vous connecter en tant que root). Les fichiers du site Web distant example.com sont stockés dans le répertoire /home/till/sites/example.com/ sur l'ordinateur local. La racine du document distant est /var/www/example.com/web/.

Vous pouvez utiliser sitecopy avec FTP et WebDAV, vous devez donc avoir un compte FTP ou WebDAV sur le serveur distant. J'utilise le nom d'utilisateur FTP defaulttill et le mot de passe howtoforge ici.

Le site Web distant que j'utilise pour ces exemples a été créé avec ISPConfig. Mais n'importe quel site auquel vous avez un accès FTP ou WebDAV fonctionnera.

2 Installation de sitecopy

Sitecopy peut être installé sur le bureau local comme suit (nous avons besoin des privilèges root, nous utilisons donc sudo) :

sudo apt-get -y install sitecopy

Vous devriez maintenant jeter un œil à la page de manuel de sitecopy pour vous familiariser avec ses options :

man sitecopy

3 Configuration de sitecopy

Accédez à votre répertoire personnel sur le bureau local...

cd ~

... et créez le répertoire .sitecopy avec des autorisations de 700 (sitecopy utilise ce répertoire pour stocker les détails du fichier) :

mkdir -m 700 .sitecopy

Ensuite, créez le fichier de configuration de sitecopy .sitecopyrc :

touch .sitecopyrc
chmod 600 .sitecopyrc

Ouvrir le fichier...

nano .sitecopyrc

... et remplissez la configuration du site exemple.com. Voici deux exemples, un pour FTP...

site example.com server example.com username defaulttill password howtoforge local /home/till/sites/example.com/ remote ~/web/ exclude *.bak exclude *~

... et une pour WebDAV :

site example.com serveur example.com protocole webdav nom d'utilisateur defaulttill mot de passe howtoforge local /home/till/sites/example.com/ remote /var/www/example.com/web/ exclure *.bak exclure *~ 

(Vous pouvez définir une strophe pour chaque site Web que vous souhaitez gérer avec sitecopy.)

La directive site doit être suivie d'un nom pour le site Web - vous pouvez en choisir un librement, par ex. exemple.com ou monsite. Ce nom sera utilisé plus tard dans les commandes sitecopy. Les options de configuration suivantes appartenant à ce site doivent être en retrait !

La plupart des options de configuration suivantes sont explicites. Le protocole par défaut est FTP; si vous souhaitez utiliser WebDAV, veuillez spécifier le protocole webdav. La directive local contient le chemin local de la copie du site Web, remote contient le chemin du site Web sur le serveur distant - il peut être absolu ou relatif. Si votre utilisateur est chrooté (comme c'est normalement le cas avec les utilisateurs FTP), vous devez utiliser un chemin relatif (tel que ~/ ou ~/web). Sinon, utilisez un chemin absolu.

Les lignes d'exclusion sont facultatives, elles sont là juste pour montrer comment vous pouvez exclure des fichiers de la maintenance par sitecopy.

Vous pouvez en savoir plus sur la configuration de sitecopy sur sa page de manuel :

man sitecopy

4 Première utilisation

Avant d'utiliser sitecopy pour la première fois, vous devez décider lequel des trois scénarios suivants correspond à votre situation :

  1. Site distant existant et copie locale, tous deux synchronisés.
  2. Site distant existant, pas de copie locale.
  3. Nouveau site distant, copie locale existante.

4.1 Site distant existant et copie locale, tous deux synchronisés

Si le site distant et la copie locale existent et sont synchronisés, exécutez

sitecopy --catchup example.com

pour que sitecopy pense que le site local est exactement le même que la copie distante. Remplacez example.com par le nom du site que vous utilisez dans le fichier .sitecopyrc.

[email protected] :~$ sitecopy --catchup example.com
sitecopy :rattrapage du site `example.com' (sur example.com dans ~/web/)
sitecopy :tous les les fichiers et les répertoires sont marqués comme mis à jour à distance.

4.2 Site distant existant, pas de copie locale

Si vous n'avez pas de copie locale du site Web distant existant, exécutez

sitecopy --fetch example.com

d'abord pour que sitecopy récupère la liste des fichiers du serveur distant (remplacez example.com par le nom du site que vous utilisez dans le fichier .sitecopyrc) :

[email protected] :~$ sitecopy --fetch example.com
sitecopy :récupération du site `example.com' (sur example.com dans ~/web/)
Fichier :erreur/503 .html - taille 1906
Fichier :erreur/502.html - taille 1881
Fichier :erreur/500.html - taille 1851
Fichier :erreur/405.html - taille 1810
Fichier :erreur/404.html - taille 1806
Fichier :erreur/403.html - taille 1809
Fichier :erreur/401.html - taille 1806
Fichier :erreur/400.html - taille 1792
Fichier :stats/.htaccess - taille 128
Fichier :robots.txt - taille 14
Fichier :index.html - taille 1861
Fichier :favicon.ico - taille 7358
Fichier :.htaccess - taille 26
Répertoire :erreur/
Répertoire :stats/
sitecopy :récupération terminée avec succès.

Puis lancez

sitecopy --synch example.com

pour mettre à jour le site local à partir de la copie distante.

sitecopy :Synchronisation du site `example.com' (sur example.com dans ~/web/)
Erreur de création/ :terminé.
Statistiques de création/ :terminé.
Erreur de téléchargement/ 503.html :[.] terminé.
Erreur de téléchargement/502.html :[.] terminé.
Erreur de téléchargement/500.html :[.] terminé.
Erreur de téléchargement/405. html :[.] terminé.
Erreur de téléchargement/404.html :[.] terminé.
Erreur de téléchargement/403.html :[.] terminé.
Erreur de téléchargement/401.html :[.] terminé.
Erreur de téléchargement/400.html :[.] terminé.
Téléchargement de stats/.htaccess :[.] terminé.
Téléchargement de robots.txt :[.] terminé.
Téléchargement index.html :[.] terminé.
Téléchargement favicon.ico :[.] terminé.
Téléchargement .htaccess :[.] terminé.
sitecopy :synchronisation terminée avec succès .

4.3 Nouveau site distant, copie locale existante

Si la copie locale existe, mais que vous avez un site distant vide, exécutez

sitecopy --init example.com

premier à initialiser le site. Remplacez example.com par le nom du site que vous utilisez dans le fichier .sitecopyrc.

[email protected]buntu-desktop :~$ sitecopy --init example.com
sitecopy :Initialisation du site `example.com' (sur example.com dans ~/web/)
sitecopy :Tous les fichiers et répertoires sont marqués comme NON mis à jour à distance.

Exécutez ensuite :

sitecopy --update example.com

pour télécharger la copie locale sur le site distant :

[email protected] :~$ sitecopy --update example.com
sitecopy :mise à jour du site `example.com' (sur example.com dans ~/web/)
Création de statistiques/ :terminé .
Création de données/ :terminée.
Erreur de création/ :terminée.
Téléchargement de stats/.htaccess :[.] terminé.
Téléchargement de données/index.html :[.] terminé.
Erreur de téléchargement/403.html :[.] terminé.
Erreur de téléchargement/401.html :[.] terminé.
Erreur de téléchargement/404.html :[.] terminé.
Erreur de téléchargement/503.html :[.] terminé.
Erreur de téléchargement/400.html :[.] terminé.
Erreur de téléchargement/502.html :[.] terminé.
Erreur de téléchargement/405.html :[.] terminé.
Erreur de téléchargement/500.html :[.] terminé.
Téléchargement index.html :[.] terminé.
Téléchargement des robots .txt :[.] terminé.
Téléchargement de .htaccess :[.] terminé.
Téléchargement de favicon.ico :[.] terminé.
sitecopy :mise à jour terminée avec succès.

5 Utilisation de sitecopy

Ensuite, l'utilisation de sitecopy est vraiment facile. Vous pouvez travailler avec votre copie locale et mettre à jour, créer et supprimer des fichiers. Une première étape, mais facultative, consiste à exécuter

sitecopy example.com

pour savoir quels fichiers ont changé localement (remplacez exemple.com par le nom du site que vous utilisez dans le fichier .sitecopyrc) :

[email protected] :~$ sitecopy example.com
sitecopy :Affichage des modifications apportées au site `example.com' (sur example.com dans ~/web/)
* Ces éléments ont été ajoutés depuis la dernière mise à jour :
info.php
sitecopy :Le site distant doit être mis à jour (1 élément à mettre à jour).

Pour synchroniser votre site Web distant avec votre copie locale (c'est-à-dire télécharger les fichiers nouveaux et modifiés sur le serveur distant et supprimer les fichiers sur le serveur distant qui ont été supprimés localement), vous exécutez simplement

sitecopy --update example.com
[email protected] :~$ sitecopy --update example.com
sitecopy :mise à jour du site `example.com' (sur example.com dans ~/web/)
Téléchargement d'info.php :[] terminé.
sitecopy :mise à jour terminée avec succès.

C'est ça! Amusez-vous avec sitecopy !

  • copie du site :http://www.manyfish.co.uk/sitecopy/
  • Ubuntu :http://www.ubuntu.com/

Ubuntu
  1. Comment activer le bureau à distance Ubuntu

  2. Maintenir des sites Web distants avec sitecopy sur Ubuntu 16.04

  3. Démarrage très lent avec Ubuntu 15.04 ?

  4. Comment contrôler à distance le bureau Ubuntu matériel avec Spice, au lieu de Vnc ?

  5. Problème avec Swap dans Ubuntu 18.04 ?

Installer Ubuntu 16.04 - Avec des captures d'écran

Gestion des packages Ubuntu avec apt

Sécurisez Ubuntu avec ClamAV Antivirus

Installer Portainer avec Docker sur Ubuntu

Problème avec l'installation d'Ubuntu dans Virtualbox ?

Problème avec Libre Office dans Ubuntu 13.04 ?