Ajax HTML 5 JavaScript Création site CMS Comment Design Logiciels Programmation RSS SQL Scripts Mobiles
SCRIPTS
Thumbnail Maker
Bioloide
FTP Synchronizer
Link Checker
Site Update
Lecteur RSS
TECHNIQUES WEB
Approche Ajax
Scripts XML

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.

  • Télécharger
Forum

ftpsync[options][paramètres]dirsource[url]

15-11-2008 15:45:31

phillag

Je ne comprends pas comment une commande php peut avoir cette syntaxe. ou sont les caractères "?" et "&" pour passer les paramètres? comment l'interpréteur php peut-il comprendre les crochets? où se trouve la déclaration de la librairie syncroniser? au début de la page php? dans le fichier php.ini et sous quelle forme? merci de votre aide.
19-11-2008 14:51:47

webmaster

La commande ftpsync.php s'utilise en ligne de commande. Les paramètres sont donc récupérés directement par le programme dans la liste des arguments de la fonction principale:
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...

Inverser ftp synchronizer.php

Je ne comprends pas la doc...

Tweet
© 2007-2013 By Kim Haskell. Licence GNU GPL. Scriptol.fr/Kim Haskell