Bonsoir le Forum
Je suis chez Free j'ai le même problème !
Serait possible que les envois soit fractionnés ? Cela serait un réglage à effectuer dans le menu du Plugin.
Par Exp : 1 en toutes les mn ou 3 toutes les 5 mn.
Votre avis.
Hors ligne
Patricia a écrit:
Votre avis.
Tu n'as pas lu les pages précédentes.
Cette fois ci ce n'est pas cela le problème
Hors ligne
rub a écrit:
Pouvez-vous faire des tests avec les modifs du commit [Subversion] r3799.
Il faut copier les fichiers:
Fichier include/functions_mail.inc.php
Fichier class_smtp_mail.inc.php
ddtddt a écrit:
Sur mes site free, le webmaster est systématiquement celui correspondant à l'adresse du site et j'ai le problème est le même.
Avec le [Subversion] r3799 le problème est le même
Pour ma galerie en ligne, j'avais déjà appliqué le fix en question. Au début, j'ai même pensé que c'était cette correction qui posait un problème puisque cela correspondait à peu prêt au moment où je m'en suis aperçu.
Mais ce n'est pas le cas. Je rejoins donc ddtddt : Avec ou sans [Subversion] r3799, même combat.
rub a écrit:
Ensuite, je pensequ si correctif il y a, il y a forte change que ca soit un plugin si c'est un pb lié à Free.
Pour les mails, avec les triggers et le remplacement de tpl, on devrait y arriver sans soucis.
Mais, un plugin spécial free serait pas mal...
C'est ce que je pense aussi. Mais j'ai toujours du mal avec les triggers, surtout sur la fonction pwg_mail()
Hors ligne
le plugin contact form n'as pas le problème d'envoi de mél
Hors ligne
ddtddt a écrit:
le plugin contact form n'as pas le problème d'envoi de mél
Merci. Je regarderai comment c'est géré dans ce plugin.
Hors ligne
Bonjour.
un exemple de plug in sans prétention pour modifier les headers du mail et faire des tests sans modifier le fichier function_mail le plug in intercepte la fonction send_mail.inc.php
Il faut ajouter la variable
$conf['use_plug'])=true ;
dans le fichier local "include/config_local.inc.php" pour activer la modification de l'headers.
A+
<?php
/*
Plugin Name: Plugin Mail
Version: 1.0
Description: Plugin modifie l entete des mails
Plugin URI: http://piwigo.org
Author: cljosse
Author URI:http://cljosse.e3b.org
*/
if (!defined('PHPWG_ROOT_PATH')) define('PHPWG_ROOT_PATH',"../Galerie");
add_event_handler('send_mail', 'pwg_send_mail_test', EVENT_HANDLER_PRIORITY_NEUTRAL, 6);
/*Testing block*/
function pwg_send_mail_test($result, $mailto, $subject, $content, $headers, $args)
{
global $conf, $user, $lang_info, $conf_mail;
/*
// DEBUG
echo '<pre>';
echo 'CONF_MAIL'.'
';
print_r ($conf_mail) ;
echo '
mailto
';
print_r($mailto);
echo '
sujet
';
print_r( $subject);
echo '
en tete
';
print_r( $headers);
echo '
contenu
';
print_r( $content);
echo '</pre>';
exit();
*/
// mailto=get_strict_email_list($to)
//Attention le nom de $mailto ($to) n'existe plus .
if (!$conf['use_plug']){
return mail($mailto, $subject, $content, $headers);
}
//================= réécriture de l'entête ===============================
$headers = "Date: ".date("l j F Y, G:i")."\n";
//$headers = 'From: '.$args['from']."\n";
$headers.= 'Reply-To: '.$args['from']."\n";
/* if (empty($to))
{
$headers.= 'To: undisclosed-recipients: ;'."\n";
}
else
{
$headers.= 'To: '.$to."\n";
}
*/
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Type: multipart/alternative;\n";
$headers.= ' boundary="---='.$conf_mail['boundary_key'].'";\n';
$headers.= 'X-Mailer: Piwigo Mailer'."\n";
return mail($mailto, $subject, $content, $headers);
}
?>
Dernière modification par cljosse (2009-09-18 14:52:30)
Hors ligne
Bonsoir à tous,
Comme je l'avais dit précédemment, avant d'avoir le message "trop de spam..." qui me bloque actuellement, je recevais les notifications sur ma boite @free, et pas sur celle de @gmail. J'avais alors décidé d'en demander la cause à gmail.
Voici leur réponse :
Technical details of permanent failure:
Google tried to deliver your message, but it was rejected by the recipient domain. We recommend contacting the other email provider for further information about the cause of this error. The error that the other server returned was: 552 552 5.6.0 Headers too large (16384 max) (state 18).
Ceci dans le cas où cela peut vous aider.
Bon week end
@+++
Hors ligne
marcod59 a écrit:
Comme je l'avais dit précédemment, avant d'avoir le message "trop de spam..." qui me bloque actuellement, je recevais les notifications sur ma boite @free, et pas sur celle de @gmail. J'avais alors décidé d'en demander la cause à gmail.
Voici leur réponse :
Technical details of permanent failure:
Google tried to deliver your message, but it was rejected by the recipient domain. We recommend contacting the other email provider for further information about the cause of this error. The error that the other server returned was: 552 552 5.6.0 Headers too large (16384 max) (state 18).
C'est en effet une possibilité. Le fait de supprimer le header "from" du mailer de Piwigo réduit la taille globale de l'entête du mail généré et ne génère plus de détection de spam. En théorie, on peut donc supprimer n'importe quel header généré par Piwigo pour que le mail parte (pas testé).
J'ai fais part de cette remarque à l'admin des pages perso chez Free (Yohan) sur le NG. Merci pour ce retour, marcod59 !
D'un autre côté, Yohan semble maintenir qu'aucune modification des règles de contrôle de mail() n'a eu lieu. Je suis en correspondance avec lui en MP pour faire des tests et des consultations de logs simultanés. A suivre...
Hors ligne
Bonjour,
Eric, c'est toi que l'on doit remercier, car j'avoue que mes connaissances en php sont complètement à la rue.
S'il n'y avait pas de gens comme toi, nous n'aurions pas ce formidable outil pour nos sites.
Donc, j'en profite pour remercier tous les programmeurs de Piwigo.
@+++
Hors ligne
Suite à un test croisé et un échange en MP entre Yohan et moi, il semblerai que la taille du header ne soit pas seule en cause quant à la détection des mails de notification aux admin comme spam. J'attends encore des réponses à certaines questions mais, d'après Yohan :
- Le header "To: undisclosed-recipients: ;" est un mauvais point pour le contrôle anti-spam de Free
- Le ratio texte / liens dans le mail est trop faible, surtout lorsqu'on utilise le format HTML pour les mails.
Ce qui est étrange (et c'est là, une des réponses que j'attends) : Suite au test croisé, j'ai retenté l'expé en modifiant le code de Piwigo pour supprimer la génération du header "From". Et là, encore une fois, le mail est bien parti et correctement reçu. Et ce malgré la présence du header "To: undisclosed-recipients: ;".
D'où mon interrogation...
Un plugin pour adapter le mailing de Piwigo aux conditions de Free semble inévitable.
@cljosse : Je n'aurais pas beaucoup de temps libre pendant les jours qui viennent. Et tu sembles maitriser le sujet (dixit l'exemple de plugin que tu as posté). Accepterais-tu de te charger de ce plugin ? Je peux te créer un dossier SVN. Il suffit simplement de définir un nom de plugin.
Je pensais à quelque chose de générique que l'on pourrait associer à tout problème de compatibilité avec l'hébergeur Free. Pourquoi pas "Free_Hosting" ?
Hors ligne
Résultats des derniers tests et échanges avec Yohan :
- Le header "To: undisclosed ;", c'est mal...
- Il faut émettre les mails dans les deux formats HTML et Plain Text. L'un ou l'autre pose visiblement un problème.
Rien concernant l'hypothétique taille du header. D'après Yohan, ce n'est pas la cause du problème.
Rien non plus concernant le header "From". Cela n'explique pas non plus pourquoi, en supprimant ce header, l'envoi de mails fonctionne...
Hors ligne
Salut.
D'aprèe mes derniers tests
en ajoutant:
$texte = "This is a multi-part message in MIME format.\n";
$texte .= "-----=".$conf_mail['boundary_key']."\n";
$texte .= "Ceci est un message est au format MIME.\n";
$texte .= 'Content-Type: text/plain; charset="UTF-8"'."\n";
$texte .= 'Content-Transfer-Encoding: 8bit'."\n\n";
$texte .= "Bonjour";
$texte .= "\n\n";
$content =$texte .$content ;
avant l'envoie des messages résout les problèmes.
A+
Hors ligne
@cljosse : Tu te sentirais pas de le faire, ce plugin "spécial Free" ?
Vraiment pas le temps en ce moment...
Hors ligne
AMHA, il faudrait un plugin qui prenne en considération la valeur d'une nouvelle entrée du tableau $conf dans config_local.inc.php : $conf['internet_provider'] (genre). Par exemple : $conf['internet_provider'] = 'Free'. Pour le moment il semble que Piwigo n'aurait de nécéssité que pour ce FAI, mais il se pourrait à l'avenir que d'autres fournisseurs nécessitent des ajustements spécifiques, auquel cas le plugin (qui ne serait dès lors plus spécifique à Free) n'aurait besoin que d'une mise à jour.
Mais certainement que le but pour Piwigo est d'éviter par dessus tout des réglages spécifiques à une une situation ou à une autre.
Hors ligne
Pourquoi imposer une méthode "lourde" avec une entrée spécifique dans config_local.inc.php ? Avec un plugin, on peut ajouter au besoin une entrée dans la table #_config au moment de l'installation du plugin.
Cela évitera aux utilisateurs de Piwigo hébergés chez Free (ou ailleurs si le cas se présentait) de se poser trop de questions. Et l'activation du plugin en serait beaucoup plus souple.
cljosse est sur le coup et il choisira la méthode la plus adaptée, j'en suis convaincu.
Hors ligne