Par Kim Haskell
© 2007-2016 Kim Haskell, Scriptol.com, Scriptol.fr
Logiciel gratuit sous licence open source GNU GPL 2.0
C'est un logiciel de transfert de fichiers sur un site web, fonctionnant de façon automatique pour mettre à jour le contenu du site à partir de fichier créés localement sur un ordinateur personel.
Il détecte les modifications et transfère les fichiers modifiés.
Il est possible en
option de transférer les fichiers édités depuis
un certain nombre de jours.
Aux webmasters qui réalisent un site web localement puis transfèrent les pages sur le serveur.
Il ne convient donc pas pour ceux qui travaillent directement en ligne sur le site et notamment ceux dont le site est géré entièrement par un CMS.
Le logiciel peut néanmoins fonctionner si l'on utilise à coté d'un contenu statique, des CMS tels que forums mais il n'opère que sur la partie statique.
On passe au logiciel les paramètres utiles: adresse ftp, login, mot de passe, répertoire distant, répertoire source. Le répertoire source est parcouru avec ses sous-répertoires récursivement, le contenu est comparé avec le contenu distant, et les fichiers modifiés sont téléchargés sur le site.
Les principales options d'accélération sont les suivantes:
On indique un nombre de jours passés, et tous les fichiers modifiés durant ces derniers jours sont transférés sans comparaison avec le contenu distant.
Le programme s'utilise en ligne de commande, dans une fenêtre d'invite de commande de Windows ou une console Unix.
Il est recommandé de créer un fichier batch (.BAT sous Windows) pour éviter de taper les options à chaque utilisation.
On peut alors ajouter une icône sur le bureau, qui lance ce fichier de commande, et sur laquelle on clique à chaque modification d'un fichier.
Dans un environnement personnel on peut placer toutes les options dans le fichier batch.
Dans un environnement
collectif, il n'est pas récommandé de mettre le mot de
passe dans le fichier. Il sera alors demandé par le programme
à chaque utilisation.
Deux modes d'opération sont possibles avec d'autres options:
Transfert selon la
période.
Dans ce cas tous les fichiers modifiés le
jour même ou depuis un nombre de jour donné, sont
transférés sur le serveur. Le répertoire de
backup devient alors optionnel.
Il est possible aussi sans utiliser de backup, de comparer les fichiers avec ceux qui figurent sur le serveur, mais l'opération est extrêmement lente.
La commande à la forme:
solp ftpsync [options][paramètres] dirsource [url]
ou directement en PHP:
php ftpsync.php [options][paramètres] dirsource url
Les paramètres permettent de donner le login, le mot de passe etc. Si les paramètres sont absents, le programme les demande.
Les options définissent le mode de mise à jour et ce que l'on veut afficher. Quand les options sont absentes, les options par défaut sont utilisées.
L'url est l'adresse ftp, de la forme “ftp.
Scriptol. fr” Si elle est omise, le programme la demande.
Options et paramètres
-t Mode test, le programme se déroule virtuellement et affiche ce qu'il ferait. Mais rien n'est modifié ni sur le serveur, ni dans le répertoire de backup. Par défaut le mode est réel.
-njours Mode période. Le code -n est suivi d'un nombre de jours: 0 pour le jour même, 1 pour hier et ainsi de suite. Tout ce qui est modifié sur la période donné, aujourd'hui, hier ou durant les n derniers jours est tranféré sur le serveur.
-bbackup
Définit le répertoire de backup et indique par là
même que l'on choisit le mode backup. La date des fichiers est
comparée à celle des fichiers dans ce répertoire,
les fichiers plus récents sont téléchargés.
Par date on entend l'instant exact à la seconde près.
Si
cette option est omise, le programme va comparer les fichiers avec
ceux qui sont sur le serveur. Le transfert est très lent et
pourrait être interrompu par le serveur.
-ddirectory Définit le répertoire sur le serveur, dans lequel on copie les fichiers. Souvent le site se trouve dans un répertoire www. Il faut alors passer:
-dwww/
Sur un hébergement
multi-domaine, il faut indiquer le nom du répertoire associé
à un domaine. Le répertoire est le même que celui
que l'on utilise avec un logiciel de transfert ftp.
Ce répertoire ne fait par partie de l'URL donnée au navigateur.
-llogin Indique le login. Si -l est spécifié mais que rien ne suit, le programme s'arrête. Alors que si l'option n'est pas donnée, le programme demandera le login.
-pmotdepasse Indique le mot de passe. Fonctionne comme le login. Si vous travaillez en environnement collectif, ne mettez pas le mot de passe dans un fichier de commande. Il vaut mieux l'entrer quand le programme le demande.
-c Effectue une comparaison de contenu et non de date. Cela se fait avec le répertoire backup et est bien sûr plus lent que la comparaison par date, qui est l'option par défaut.
-a Transfère tous les fichiers pour restaurer le site, aucune comparaison n'est faite. Si un répertoire de backup est donné, il y aura aussi copie dans ce répertoire.
-v Mode verbeux. Affiche plus de détails sur les opérations.
-q Mode silencieux. N'affiche rien des opérations du programme.
Options de test de liens
Il est possible (depuis la version 1.3) pour chaque page chargée sur le serveur, de tester les liens qu'elle contient, pour éviter les liens brisés, qu'il s'agisse de liens internes ou externes.
Deux options ont été ajouté pour activer le test:
-u Activation du test.
-wsite Indiquer le domaine du site.
L'URL du site est
nécessaire pour les liens internes relatifs afin de
reconstruire une URL valide.
Si l'adresse ftp est aussi celle de
du site, l'option -w est superflue, l'URL ftp sera transformée
en http. Ce n'est pas le cas des sites partageant un même
hébergement, il faut alors préciser le domaine du site.
Option de carte de site
La carte de site est mise à jour automatiquement pour toute nouvelle page mise en ligne. Si la page est déjà dans la liste, la date seule sera mise à jour. La fréquence de changement et la priorité ne sont pas modifiés.
-m Activation de la mise à jour de la carte de site.
En cas de problème pour utiliser PHP FTP Synchronizer, n'hésitez pas à poster sur le forum dans la langue de votre choix, scriptol.fr en français, scriptol.com en anglais.