Fiche
Niveau de difficulté : | n/c. |
---|---|
Recommandations : | n/c. |
A lire aussi : | n/c |
Cette page n'est pas révisée. Cela signifie qu'elle n'est peux-être plus à jour et que les informations qu'elle contient peuvent se révéler obsolètes.
Merci pour votre compréhension.
Page à réviser !
Voir les sujets :
Ils permettent d'héberger des images ailleurs que sur le site qui contient Piwigo. Cela peut s'avérer pratique avec des hébergements à taille réduite.
Par contre, les performances de Piwigo ne saurait être “garanties” puisque les images se trouve à l'extérieur du site principal.
Le site principal contient entre autres…
piwigo \-- galleries |-- category-1 | \-- category-1.1 | \-- category-1.1.1 | |-- category-1.1.1.1 | | |-- pwg_high | | | \-- wedding.jpg | | |-- thumbnail | | | \-- TN-wedding.jpg | | \-- wedding.jpg | \-- category-1.1.1.2 \-- category-2 |-- piglet.gif |-- thumbnail | |-- TN-piglet.jpg | \-- TN-video.jpg \-- video.avi
Un site distant contiendra uniquement ceci:
remote-gallery-1 |-- remote-category-1 | \-- remote-category-1.1 | \-- remote-category-1.1.1 | |-- remote-category-1.1.1.1 | | |-- pwg_high | | | +-- honeymoon.jpg | | |-- thumbnail | | | +-- TN-honeymoon.jpg | | \-- honeymoon.jpg | \-- remote-category-1.1.1.2 |-- remote-category-2 | |-- thumbnail | | |-- TN-heffalump.jpg | | \-- TN-pooh.jpg | |-- pooh.gif | \-- heffalump.avi \-- create_listing_file.php \-- create_listing_file_local.inc.php
Le module create_listing_file.php
se trouve directement dans le répertoire ./remote-gallery-1
Il provient de votre site principal ./tools/create_listing_file.php
IMPORTANT : Il NE doit SURTOUT PAS être modifié (lire son contenu, copiez également (et modifiez) le fichier create_listing_file_local.inc.php). |
---|
L'usage du create_listing_file_local.inc.php n'est possible que depuis Piwigo 2.0.0.
Puis dans l'administration du site principal, l'adresse à donner dans la gestion des site distant sera :
http://www.extend-remote-site.de/remote-gallery-1/
si http://www.extend-remote-site.de
est l'adresse de votre hébergement distant.
La version de create_listing_file.php
doit être identique à la version de PWG du site principal.
A chaque changement de version, pensez à modifier le fichier create_listing_file.php, et à priori vous N'aurez PAS à revoir le contenu de votre create_listing_file_local.inc.php.
Un site distant peut être partagé par plusieurs sites principaux ce qui permet d'afficher les mêmes images dans des galeries différentes (les versions des sites principaux doivent alors évoluer en même temps).
Ensuite, la mise à jour se fait depuis la page d'administration :
Cinq options sont disponibles. Pour toute nouvelle mise à jour, il faut utiliser les trois premières dans l'ordre. Explication :
Votre hébergement du site distant peut interdire l'exécution de create_listing_file.php
depuis un site externe alors voir la Gestion manuelle des sites distants.
Si le nombre d'images du site distant est conséquent il est fortement conseillé de lire la page sur la La limitation des sites distants.
A noter : La fonction d'upload par les visiteurs n'est pas disponible sur les catégories physiques des sites distants.
Depuis PWG v1.7.0, la seule limitation qui reste sur les sites distants est la capacité de la galerie principale à traiter un volume de photos important.
A ce jour, il a été possible de synchroniser un galerie de 8000 photos d'un seul coup.
Si la galerie principale ne réussit pas la synchronisation d'un site distant pour un problème de max_execution_time, alors la synchronisation doit être divisée en plusieurs étapes :
Les sites distants qui contiennent beaucoup de photos peuvent poser des problèmes chez certains hébergeurs qui limitent le temps d'exécution des scripts.
Le temps d'exécution d'un script est de 30 secondes par défaut. Il est visible dans le phpinfo de votre hébergeur à la ligne max_execution_time.
Le script de synchronisation 1) réinitialise ce temps d'exécution à 30 secondes pour chaque catégorie scannée (voir la fonction set_time_limit() dans le script). Ce rafraîchissement n'est effectif que si l'hébergeur n'a pas activé le mode SAFE de PHP (chercher safe_mode off dans le phpinfo).
En conclusion, si votre hébergeur à activé le mode safe, alors vous devrez organiser votre site distant d'une autre façon.
Pour reprendre l'exemple précédent :
remote-gallery-1 |-- remote-category-1 | \-- remote-category-1.1 | \-- remote-category-1.1.1 | |-- remote-category-1.1.1.1 | | |-- pwg_high | | | +-- honeymoon.jpg | | |-- thumbnail | | | +-- TN-honeymoon.jpg | | \-- honeymoon.jpg | \-- remote-category-1.1.1.2 |-- remote-category-2 | |-- thumbnail | | |-- TN-heffalump.jpg | | \-- TN-pooh.jpg | |-- pooh.gif | \-- heffalump.avi \-- create_listing_file.php \-- create_listing_file_local.inc.php
Peut être modifié comme ceci :
remote-gallery-1 |-- remote-category-1 | +-- remote-category-1.1 | | \-- remote-category-1.1.1 | | |-- remote-category-1.1.1.1 | | | |-- pwg_high | | | | +-- honeymoon.jpg | | | |-- thumbnail | | | | +-- TN-honeymoon.jpg | | | \-- honeymoon.jpg | | \-- remote-category-1.1.1.2 | \-- create_listing_file.php | \-- create_listing_file_local.inc.php |-- remote-category-2 | |-- thumbnail | | |-- TN-heffalump.jpg | | \-- TN-pooh.jpg | |-- pooh.gif | \-- heffalump.avi \-- create_listing_file.php \-- create_listing_file_local.inc.php
Notez que create_listing_file.php
et create_listing_file_local.inc.php
ont été déplacés et copiés dans les sous-répertoires.
Puis dans l’administration du site principal, l’adresse du site distant qui était :
http://www.extend-remote-site.de/remote-gallery-1/
Sera supprimée et remplacée par 2 sites distants :
http://www.extend-remote-site.de/remote-gallery-1/remote-sub-gallery-1/ http://www.extend-remote-site.de/remote-gallery-1/remote-sub-gallery-2/
Chez certains hébergeurs, il faut créer un répertoire “sessions” à la racine de votre site.
C'est le cas chez FREE.
1) Si l'un de vos serveurs est chez Free, il vous faudra obligatoirement créer un dossier “sessions” à la racine de votre site. (CF: Doc Free)
Si les deux sont chez Free, il faut donc reproduire l'opération sur vos deux serveurs.
2) Il est bon de pouvoir protéger ce dossier “sessions” car c'est un dossier sensible au piratage.
Les lignes à entrer dans ce fichier sont les suivantes :
PerlSetVar AuthFile /chemin_du_dossier/fichier_de_mots_de_passe AuthName "Acces Restreint" AuthType Basic require valid-user
Ce fichier est à placer directement dans le dossier à sécuriser “sessions”.
administrateur:super_mot_de_passe utilisateur:youpi
Il est possible de placer ce fichier à n'importe quel endroit sur l'espace Web. Une fois que vous avez placé ce fichier, il faut modifier votre .htaccess ci-dessus et à la place de /chemin_du_dossier/fichier_de_mots_de_passe y inscrire le chemin de votre fichier texte.
Pour que les dossiers ne soient pas accessibles, créez un autre fichier .htaccess en plaçant deny from all
à l'intérieur, ce qui bloquera l'accès au dossier (et aux sous-dossiers) automatiquement.
A noter : Vous pouvez appeler le script create_listing_file.php directement depuis le navigateur afin de voir ce qu'il fait.
Informations issues du sujet: http://fr.piwigo.org/forum/viewtopic.php?pid=93935#p93935
Les paramètres suivants peuvent être modifiés pour adapter le script create_listing_file_local.inc.php
au besoin de l'utilisateur ou au serveur sur lequel il est installé.
Certains paramètres exigent plus de compétences techniques que d'autres pour être manipulés. N'hésitez pas à utiliser le forum pour en discuter.
$conf['gallery'] = 'http://www.mon.domaine/ma/galerie';
C'est l'adresse de votre galerie principale. Elle sert à afficher un lien de retour et les images des différent boutons.
$conf['prefix_thumbnail'] = 'TN-';
C'est le préfixe utilisé pour le nom des miniatures.
Il DOIT être identique au préfixe utilisé sur la galerie principale.
Par défaut, Piwigo utilise le préfixe TN-.
$conf['file_ext'] = array('jpg','JPG','jpeg','JPEG','png','PNG','gif','GIF','mpg','zip', 'avi','mp3','ogg');
C'est la liste des extensions de fichier supportées par Piwigo.
Les majuscules/minuscules DOIVENT être respectées. Vous ne listerez pas les fichiers ayant l'extention 'pDf', en ajoutant 'pdf' ou 'PDF'.
$conf['picture_ext'] = array('jpg','JPG','jpeg','JPEG','png','PNG','gif','GIF');
C'est la liste des extensions de fichier d'images supportées par Piwigo.
Cette liste ne DEVRAIT pas être modifiée sans demander conseil.
Un serveur web correctement configuré autorise l'exécution d'un script pour un durée déterminée. C'est le paramètre max_execution_time de PHP (Plus d'informations) qui est généralement fixé à 30 secondes.
Si ce serveur est vraiment bien configuré, le mode SAFE est activé. C'est le paramètre safe_mode de PHP (Plus d'informations) qui est généralement fixé à 1 (true).
Dans ce contexte, un script dispose de 30 secondes pour générer le fichier listing.xml
avant de planter, ce qui arrivait avec des galeries très importantes en nombre de photos dans les versions de Piwigo antérieures à 1.7.0.
Avec la version 1.7.0 de PWG, le script contourne cette restriction en affichant une page intermédiaire avant le max_execution_time fatidique. Cette page intermédiaire va être rafraîchie (après quelques secondes) jusqu'à ce que le fichier listing.xml soit complet.
$conf['max_execution_time'] = (5*ini_get('max_execution_time'))/6;
C'est le temps maximum entre le début du script et l'affichage de la page intermédiaire.
Par défaut, il est égal à 5/6èmes du temps autorisé par le serveur.
Il ne DEVRAIT pas être modifié sans demander conseil.
Il DEVRAIT être fonction du temps autorisé par le serveur. Il ne DOIT pas être égal à 0.
$conf['refresh_delay'] = 0;
C'est le temps entre l'affichage de la page intermédiaire et son rafraîchissement.
Par défaut, il est égal à 0 secondes.
Si vous voulez en savoir plus sur l'EXIF : Wikipedia :: EXIF Reportez vous à la documentation interne pour affiner vos réglages : meta
$conf['use_exif'] = false;
Ce paramètre détermine si le script doit extraire les informations EXIF des images listées (true) ou non (false).
Il DOIT être égal à 'true' ou 'false'.
Par défaut, il est égal à false.
$conf['use_exif_mapping'] = array( 'date_creation' => 'DateTimeOriginal' );
Ce paramètre liste les informations EXIF à extraire des images.
Logiquement, vous retrouvez ces informations dans la configuration de site principal.
Si vous voulez en savoir plus sur l'IPTC : Wikipedia :: IPTC Reportez vous à la documentation interne pour affiner vos réglages : meta
$conf['use_iptc'] = false;
Ce paramètre détermine si le script doit extraire les informations IPTC des images listées (true) ou non (false).
Il DOIT être égal à 'true' ou 'false'.
Par défaut, il est égal à false.
$conf['use_iptc_mapping'] = array( 'keywords' => '2#025', 'date_creation' => '2#055', 'author' => '2#122', 'name' => '2#005', 'comment' => '2#120' );
Ce paramètre liste les informations IPTC à extraire des images.
Logiquement, vous retrouvez ces informations dans la configuration de site principal.
$conf['protect'] = false;
Ce paramètre détermine si les répertoires listés doivent être protégés automatiquement (true) ou non (false).
Il DOIT être égal à 'true' ou 'false'.
Par défaut il est égal à false.
$conf['protect_content'] = '<?php header("Location: '.$conf['gallery'].'") ?>';
C'est le contenu du fichier index.php, créé dans chaque répertoire listé pour le protéger.
Par défaut il redirige automatiquement les visiteurs à l'adresse indiquée dans les Configurations de la gallerie.
$conf['protect_warnings'] = true;
Ce paramètre détermine si le script affiche un message (true) ou non (false) quand un répertoire est déjà protégé.
Il DOIT être égal à 'true' ou 'false'.
Par défaut il est égal à false.
$conf['thumbnail'] = false;
Ce paramètre détermine si la miniature d'une image doit être générée automatiquement (true) ou non (false) lorsqu'elle n'existe pas.
Il DOIT être égal à 'true' ou 'false'. Le script désactive automatiquement la génération des miniatures si le serveur ne supporte la génération d'image ou si les autres paramètres de configuration sont erronés.
Par défaut la valeur est égale à false.
$conf['thumbnail_method'] = 'ratio';
C'est la méthode employé pour déterminer la taille de la miniature à générer :
Par défaut elle est égale à ratio.
$conf['thumbnail_height'] = 128;
C'est la hauteur en pixels des miniatures.
Si elle est utilisée, elle DOIT être numérique et supérieure à 0. Dans le cas contraire, la génération automatique des miniatures est désactivée.
Elle est OBLIGATOIRE quand la méthode de génération est 'fixed' ou 'height.
Par défaut elle est égale à 128 pixels, comme la hauteur par défaut des miniatures sur une galerie principale.
$conf['thumbnail_width'] = 128;
C'est la largeur en pixels des miniatures.
Si elle est utilisée, elle DOIT être numérique et supérieure à 0. Dans le cas contraire, la génération automatique des miniatures est désactivée.
Elle est OBLIGATOIRE quand la méthode de génération est 'fixed' ou 'width.
Par défaut elle est égale à 128 pixels, comme la largeur par défaut des miniatures sur une galerie principale.
$conf['thumbnail_ratio'] = 0.2;
C'est la proportion entre entre les dimensions de l'image et celles de la miniature.
Si elle est utilisée, elle DOIT être numérique et strictement comprise entre 0 et 1. Dans le cas contraire, la génération automatique des miniatures est désactivée.
Elle est OBLIGATOIRE quand la méthode de génération est 'ratio'.
Par défaut elle est égale à 0.2 (soit 20%).
$conf['thumbnail_format'] = 'jpeg';
C'est à la fois le format d'image de la miniature générée et l'extension de son nom.
Il PEUT avoir les valeurs 'jpeg', 'gif' ou 'png'. Toute autre valeur désactive la génération automatique des miniatures.
Il DOIT être supportée par le serveur. Dans le cas contraire, la génération automatique des miniatures est désactivée.
Par défaut il est égal à jpeg.
: Pas testé sur Piwigo v2. Si quelqu'un se lance dedans, merci de prévenir l'équipe du résultat. Article tiré de http://fr.piwigo.org/doc/doku.php?id=fr:personnalisation:branche_1.5#gestion_manuelle_des_sites_distant
— Vincent 2009/09/04 20:19 Je pense que cette partie est complètement obsolète. — end
Pour ceux qui ne peuvent pas exécuter la mise à jour des sites distant directement depuis l'interface d'administration de PWG, il est possible en modifiant un peu le fichier create_listing_file.php d'obtenir un menu lorsque vous exécutez ce fichier directement depuis votre site distant.
Dans create_listing_file.php remplacer vers la ligne 475 :
if (isset($_GET['action'])) { $page['action'] = $_GET['action']; } else { $page['action'] = 'generate'; }
Par
if (isset($_GET['action'])) { $page['action'] = $_GET['action']; } else { $page['action'] = ''; }
Ensuite vers la ligne 540 ajouter après :
case 'clean' : { if( @unlink('./listing.xml')) { echo 'PWG-INFO-3 : listing.xml file deleted'."\n"; } else { echo 'PWG-ERROR-3 : listing.xml does not exist'."\n"; } break; }
Ceci :
default: // Menu de lancement pour la mise à jour manuel des sites distant echo '<ul>'; echo ' <li><a href="create_listing_file.php?action=generate">Generate listing.xml</a></li>'; echo ' <li><a href="create_listing_file.php?action=test">Test</a></li>'; echo ' <li><a href="create_listing_file.php?action=clean">Clean listing.xml</a></li>'; echo '</ul>';
Il est possible aussi de télécharger directement le fichier listing.xml depuis le fichier create_listing_file.php en ajoutant après :
echo 'PWG-INFO-1: listing.xml created in '; echo get_elapsed_time($start, get_moment());
echo "\n"; echo '<br><a href="http://'.$_SERVER['HTTP_HOST'].$local_folder.'listing.xml">Clic here for download file</a>';
Il ne vous reste plus qu'à exécuter le fichier create_listing_file.php
directement depuis votre navigateur, générer le fichier listing.xml
, le télécharger sur votre poste puis par FTP le mettre à la racine de votre site principal. Ensuite rendez-vous dans l'interface d'administration de PWG, section Site distant.
FlipFlip
Un site distant peut être appelé par la galerie principale depuis la page d'administration des sites distants pour :
Les autres actions (synchroniser et supprimer) sont des actions de la galerie principale.
Tester permet de vérifier que la version du script distant est la même que celle de la galerie principale.
Générer le listing dirige le navigateur vers le site distant. Vous devrez naviguer sur les pages du site distant pour revenir à l'administration du site (voir ci-dessous).
Nettoyer permet de supprimer le ficher listing.xml du site distant après la synchronisation afin de ne pas laisser d'informations à la disposition des curieux.
Le script create_listing_file.php qui doit être téléchargé sur le site distant peut être appelé directement depuis le navigateur à l'adresse http://www.mon.domaine/mon/repertoire/create_listing_file.php.
Utilisé directement, ce script peut afficher différentes pages :
La page d'accueil ne fait que proposer des liens vers :
La page de test affiche les informations suivantes :
Elle propose aussi des liens vers :
La page intermédiaire est affichée lorsqu'une des générations de listing est effectuée en plusieurs étapes.
Elle affiche les informations suivantes :
Elle propose aussi des liens vers :
La page de synthèse est affichée lorsque la galerie a été complètement scannée par le script.
Elle affiche les informations suivantes :
Elle propose aussi des liens vers :
La page de suppression n'affiche que le résultat de la suppression du listing.
Elle propose aussi des liens vers :