Je me réponds à moi-même !
J'ai résolu mes deux problèmes sur mon VPS, ma solution pourra être utile à d'autres…
1. Fatal error au moment de l'enregistrement d'un nouvel utilisateur pour cause de "Class 'DOMDocument' not found…"
Solution sous Debian (à adapter selon la configuration) : installer le paquet php7.3-xml puis redémarrer nginx.
2. Plus d'erreur mais les mails ne partent pas
Solution (à adapter aussi) : installer les paquets mailutils et postfix pour configurer un "relay mail" (par exemple en suivant les étapes de ce tutoriel).
Et surtout ne RIEN ajouter au fichier de config locale de Piwigo concernant le serveur SMTP !!
J'ai passé beaucoup de temps à faire diverses tentatives, avant de me rendre compte que le bon choix était de ne rien mettre…
Voilà, bonne chance à vous !
Je passe le sujet à [Résolu], jusqu'à preuve du contraire…
Mist
Merci pour la suggestion, mais ça ne suffit pas, même après ajout de ':465' dans 'smtp_host'…
J'ai continué à investiguer avec deux autres tentatives inspirées d'autres fils dans les forums sur la configuration des mails :
1. Abandonner le TLS et remplacer ':465' par ':25' dans la configuration du SMTP Orange
2. Installer postfix comme "relay mail" : je peux envoyer des courriels depuis mon VPS avec la commande "mail" et je les reçois ! J'ai alors juste mis dans ma config locale de Piwigo
$conf['smtp_host'] = 'localhost:25';
comme indiqué ici.
Mais rien n'y fait :-(
Ha si, gros progrès à l'instant : en me renseignant sur DOMDocument, j'ai fini par comprendre qu'il fallait installer sur mon VPS le paquet php7.3-xml, puis relancer nginx (manœuvre à adapter selon votre configuration…).
Et là… TADA… Plus de message d'erreur !! Piwigo dit à mon nouvel utilisateur qu'il va bientôt recevoir un mail…
Mais hélas rien n'arrive :-(
Je dois encore me pencher sur la configuration des envois de mails…
À suivre !
Mist
P.S. (@biache) Je suis ravi que mes photos d'oiseaux vous plaisent, j'en ai plein d'autres à mettre en ligne, revenez voir dans quelques mois (je suis bientôt à la retraite, je vais pouvoir m'en occuper ;-))
Ca semble pas déconnant, peut etre rajouter le type de sécurisation ?
$conf['smtp_secure'] = 'tls';
Etant sur un piwigo sur piwigo.com je ne saurais guère plus vous aider malheureusement
Merci pour cette réponse rapide et pertinente !
Pour les plugins, je n'en ai pas ajouté récemment… Mais quand j'ai dit que tout se passait bien, en fait aucun utilisateur n'avait cherché à s'enregistrer !
L'erreur est apparue à la première tentative.
Cela dit, j'avais bien vu qu'il était question de mail, donc j'avais tenté de décocher l'envoi des identifiants par mél, l'erreur était toujours là.
MAIS, bien vu biache, la notification des admins à chaque enregistrement était cochée : je viens de la décocher et de tester un enregistrement sans envoi des identifiants, pas d'erreur !!
Il me reste donc à configurer l'envoi des mails par piwigo…
N'ayant pas de serveur de mails sur mon VPS, j'ai mis dans mon fichier local/config/config.inc.php 'smtp.orange.fr' dans $conf['smtp_host'] et les identifiants de mon mail Orange dans $conf['smtp_user'] et $conf['smtp_password'].
C'est peut-être cette idée qui est ridicule… Si c'est le cas, je veux bien des indications sur la marche à suivre pour configurer cela correctement. Faut-il installer postfix, sendmail ou autre ? J'avais cru comprendre que Piwigo avait ses propres outils mais manifestement il me manque quelque chose…
Merci d'avance !
Mist
Entre le moment ou tout se passait bien et l'apparition de l'erreur, le système a eu un changement ? des plguins ajoutés ?
Le message d'erreur indique qu'il est généré lors de l'appel de la fonction mail sur notification d'enregistrement.
Si vous désactivez la notication d'enregistement d'un nouvel utilisateur dans la configuration de votre galerie (et comme vous initiez vous même la demande d'enregistrement) peut etre cela vous débloquera en attendant mieux ?
Quelques clichés très sympa d'oiseaux dans votre galerie.
Bonjour,
Ma galerie Piwigo est en ligne depuis quelques mois et tout se passait bien… jusqu'à ce que certains visiteurs cherchent à s'enregistrer (à ma demande pour pouvoir accéder à un album privé).
Au moment de valider l'enregistrement, on reçoit ce message d'erreur que je ne sais pas interpréter :
Fatal error: Uncaught Error: Class 'DOMDocument' not found in /var/www/html/piwigo/include/emogrifier.class.php:406 Stack trace: #0 /var/www/html/piwigo/include/emogrifier.class.php(233): Emogrifier->createXmlDocument() #1 /var/www/html/piwigo/include/functions_mail.inc.php(955): Emogrifier->emogrify() #2 /var/www/html/piwigo/include/functions_mail.inc.php(853): move_css_to_body('<!DOCTYPE html ...') #3 /var/www/html/piwigo/include/functions_mail.inc.php(458): pwg_mail(Array, Array, Array) #4 /var/www/html/piwigo/include/functions_mail.inc.php(398): pwg_mail_admins(Array, Array) #5 /var/www/html/piwigo/include/functions_user.inc.php(228): pwg_mail_notification_admins('Enregistrement ...', 'Utilisateur: xx...') #6 /var/www/html/piwigo/register.php(54): register_user('xxxx', 'xxxx', 'xxxx', true, Array, true) #7 {main} thrown in /var/www/html/piwigo/include/emogrifier.class.php on line 406
Ce n'est qu'un mauvais moment à passer, car l'enregistrement est validé et le système de permissions fonctionne normalement.
Mais c'est désagréable pour les visiteurs, qui pensent que rien ne va plus !
Merci d'avance, si vous avez une idée de la cause, voire d'un remède !
Je précise que ma galerie est sur un VPS sous Debian 10… Quelque chose que j'aurais dû installer ?
Mist
Version de Piwigo: 11.5
Version de PHP: 7.3.27
Version de MySQL: 10.3.27-MariaDB
URL Piwigo: https://piwigo.mist.ovh