Piwigo

Référence: Ubuntu 22.04

Au moment d’écrire ces lignes, PIWIGO n’est pas pleinement compatible avec PHP 8.1. De plus l’utilisation de PHP 8.1 casse le fonctionnement de l’application PIWIGO NG sous Android 13

En utilisant PHP 7.4, l’ensemble fonctionne bien en attendant les mises à jour.

Voici quelques notes de personnalisation du site Piwigo. Donc après avoir suivi les étapes d’installation de Piwigo, vous pouvez ajuster quelques paramètres.

Pour permettre le téléversement de gros fichier dans Piwigo, il faut ajouter une directive php dans les options du site web sous ispConfig :

FcgidMaxRequestLen=300000
upload_max_filesize = 200M
post_max_size = 200M
memory_limit = 400M

Il faut également ne pas utiliser Fast-CGI mais plutôt PHP-FPM

Installer les plugins suivants:

GrumPluginClasses
astat
SmartAlbums
local files editor

Ajouter le code Matomo aux fichiers:

/web/themes/smartpocket/template/header.tpl
/web/themes/modus/template/header.tpl
Importation des méta-données

Référence: https://piwigo.org/doc/doku.php?id=user_documentation:metadata
Avec « local files editor » ou Filezilla, ajouter les éléments suivants au fichier situé dans votre site Piwigo local/config/config.inc.php et synchroniser à nouveau les répertoires et fichiers

$conf['use_exif_mapping'] = array(
'date_creation' => 'DateTimeOriginal',
'comment' => 'UserComment',
);
$conf['use_iptc'] = true;
$conf['use_iptc_mapping'] = array(
'author' => '2#080',
'name' => '2#005',
'comment' => '2#120',
'keywords' => '2#025',
);

Utilisation d’un fournisseur SMTP à la place de PHP-mailer

Utiliser le greffon « LocalFiles Editor » de Piwigo pour ajouter ceci au fichier « config_default.inc.php » local/config/config.inc.php

// Ajouté le 2024-04-13 pour résoudre un problème d'envoi de notification avec php mailer
// smtp configuration
// (work if fsockopen function is allowed for smtp port)
// smtp_host: smtp server host
// if null, regular mail function is used
// format: hoststring[:port]
// exemple: smtp.pwg.net:21
// smtp_user/smtp_password: user & password for smtp identication
$conf['smtp_host'] = 'smtppro.zoho.com:465';
$conf['smtp_user'] = 'admin@infolaf.ca';
$conf['smtp_password'] = 'mot de passe d'application';
// 'ssl' or 'tls'
$conf['smtp_secure'] = 'ssl';
Mise en place de la synchronisation de téléversement vers la galerie (galleries) du site

Activer RSYNC sur le serveur:

Pour activer le démon de synchronisation rsync sous UBUNTU 20.04.3:

sudo cp /lib/systemd/system/rsync.service /etc/systemd/system/rsync.service

sudo systemctl enable rsync

Ensuite, créez le fichier ou ajouter cette configuration /etc/rsyncd.conf:

nano /etc/rsyncd.conf

log file = /var/log/rsync.log

[gallerie]
uid = web8
gid = client1
path = /var/www/clients/client1/web8/web/galleries/
hosts allow = 192.168.0.11 #ici votre IP
comment = téléversement vers photos.infolaf.ca
read only = false
auth users = test
secrets file = /etc/rsyncd.scrt

Le fichier secret /etc/rsyncd.scrt devra contenir dans cet exemple les permissions 640:

personne1:motdepasse1
personne2:motdepasse2

sudo nano /etc/rsyncd.scrt

test:votremotdepasse

sudo chmod 640 /etc/rsyncd.scrt

Vous pouvez maintenant lancer rsync:

sudo service rsync start

Le read only activé permet de protéger vos fichiers en écriture. Si pour une quelconque raison, vous souhaitez enlever cet attribut, revoyez alors toute la configuration de RSYNC.

Créer le script pour l’exécution de la commande de téléversement

mkdir -p ~/scripts/rsync/

nano ~/scripts/rsync/upload_photos_photos-infolaf-ca.sh

echo "Bonjour,"
echo ""
echo "Ce message vous confirme que le téléversement des photos a bien été effectué dans la galerie du site photos.infolaf.ca"
echo ""
echo ""
echo ""
echo "Message produit par le script de sauvegarde execute par CRON sur nas@lxdvm-fs1.reseau.maison"
echo ""
rsync -avz --stats --delete --exclude='quota.*' --exclude='Picasa.ini' --exclude='.dtrash' --delete-excluded --password-file /home/nas/scripts/rsync/rsync_pass /media/nas1/Photographies/Photos/ test@192.168.0.4::gallerie