PHP FTP Synchronizer - Mise à jour de site Web
Programme gratuit pour mettre à jour votre site Web à partir des fichiers locaux. PHP FTP Synchronizer parcourt récursivement l'arborescence du répertoire et met à jour le répertoire équivalent sur le site, en remplaçant les fichiers qui ont été modifiés.
PHP FTP Synchronizer est un script dont le code source est en langage Scriptol
et converti en PHP par le compilateur Scriptol PHP disponible sur ce site,
en version 7.0.
Il fonctionne en ligne de commande (une interface graphique est en développement
pour Windows).
Spécificités du programme
Par rapport aux divers programmes existants et pour la plupart commerciaux, le synchroniseur offre des options d'accélération:
- Utilisation possible d'une version de copie sur laquelle sont effectuées les comparaisons ce qui évite de télécharger le fichier distant et permet ainsi une mise à jour extrêmement rapide. En outre cela procure une seconde copie de sauvegarde du site, éventuellement sur une unité de stockage amovible.
- Possibilité de transférer tous les fichiers modifiés dans les n derniers jours, n étant un nombre de jours que vous définissez.
En outre le programme exécutable est un script en PHP, il fonctionne donc sur tous les systèmes, Windows, Linux, Mac... Et vous pouvez étendre ses possibilités si besoin.
Comment le programme fonctionne
Les paramètres utiles étant donnés (voir ci-dessous),
le programme dispose du chemin de vos fichiers, du nom du site (ftp.xxxx.tld),
votre login et mot de passe, du chemin sur l'hébergement si on ne copie
pas à la racine, ainsi que des options choisies.
Il lit chaque fichier en parcourant de façon récursive le répertoire
et les sous-répertoires, le compare avec le fichier distant s'il existe,
et le copie ou le remplace.
Si l'option d'accélération est choisie, il compare le fichier
avec le backup quand à la date précise ou le contenu au choix,
puis s'ils sont différents télécharge le fichier, le
copie sur le backup et synchronise la date de fichier du backup sur celle
de la source.
Comment on utilise PHP FTP Synchronizer
On ouvre l'invite de commande sous Windows ou une console sous Linux ou Mac.
On passe une commande sous la forme:
solp ftpsync [options] [paramètres] url
ou directement en PHP:
php ftpsync.php [options] [paramètres] url
Les textes entre crochets [] sont optionnels.
Exemple:
php ftpsync.php -v -llogin -pmotdepass -fftp.scriptol.fr -dw:\scriptol\ -bf:\scriptol\ -wwww.scriptol.fr
Les options qui sont détaillées dans le manuel permettent de passer tous les paramètres requis. Si un paramètre manque, le programme vous le demande. Mais si une option est donnée et qu'elle requiert un paramètre, celui-ci doit être fourni dans commande, il n'est pas demandé par le programme qui dans ce cas affiche une erreur.
Documentation
Manuel d'utilisation
Le mode d'emploi de PHP FTP
Synchronizer en version HTML.
Les derniers changements
- 1.9 - Février 2012
Les redirections temporaires de code 302 ne sont plus indiquées. - 1.8 - 20 septembre 2010
Test sur les liens relatifs à la racine pris en compte par le testeur de liens. - 1.5 - Le 6 août 2008
Le test de lien est effectué de façon différée, après toutes les mises à jour. - Version 1.4 - 1 juillet 2008.
Résultats du test de lien plus distincts.
Affichage seul des pages avec des liens brisés ou redirigés. - Version 1.3, 24 juin 2008.
L'option -u permet d'activer le test des liens dans les pages nouvelles ou modifiées. - Version 1.2 - 13 décembre 2007.
Ajouté l'option -f pour les url ne commençant pas par ftp. - Version 1.1 - 24 septembre 2007.
Ajouté le mode FTP passif. - Version 1.0 - 10 septembre 2007. Distribution initiale.
Problèmes possibles
- Au bout d'un moment, le programme accélère et veut télécharger
tous les fichiers sans distinction.
Cela vient d'un manque de mémoire pour permettre à PHP de faire les comparaisons et sélectionner les fichiers modifiés.
On peut augmenter la mémoire allouée dans le fichier php.ini qui se trouve dans le répertoire Windows ou équivalent sous Unix de même que le temps d'exécution accordé au script:max_execution_time = 3000 memory_limit = 256M
Il est possible aussi que le serveur ferme la connexion si elle dure trop longtemps. Utiliser de préférence l'unité de backup.
- Si vous avez installé Windows Live OneCare, qui limite les transferts ftp, vérifiez le fonctionnement du programme avant de l'utiliser en production.
Obtenir le programme
L'archive contient:
- Le source Scriptol.
- Le script exécutable PHP.
- Le manuel au format HTML et ODF, vous pouvez créer un fichier PDF
ou DOC de Word avec LibreOffice (gratuit).
- Le script ftpcheck pour vérifier une connexion.
- La licence GPL.
ftpsync[options][paramètres]dirsource[url]
phillag
webmaster
function main($argc, $argv)tandis que celle-ci est appelée à la racine du script:
main($argc, $argv)ces variables sont des variable globales définies automatiquement. C'est seulement lorsque un script est appelé par les commandes http (POST) que les codes & etc. sont utilisés. Les crochets sont destinés au manuel et non au programme. Ils représentent un paramètre optionnel. Dans la commande effective, on remplace les crochets et leur contenu par un paramètre.
Suite du forum...
