Newsgroup: it.comp.www.php
Titolo: Problema con gmail

: host 
gmail-smtp-in.l.google.com
[64.233.166.26] said:
    550-5.7.1 [5.144.164.171      11] Our system has detected that this message
    is 550-5.7.1 not RFC 5322 compliant: 550-5.7.1 Multiple 'From' headers
    found. 550-5.7.1 To reduce the amount of spam sent to Gmail, this message
    has been 550-5.7.1 blocked. Please visit 550-5.7.1
 
https://support.google.com/mail/?p=RfcMessageNonCompliant
 550 5.7.1 and
    review RFC 5322 specifications for more information. d30si556562wra.15 -
    gsmtp (in reply to end of DATA command)
 
Final-Recipient: rfc822; 
indirizzo-a-cu...@gmail.com
 
Original-Recipient: 
rfc822;indirizzo-a-cu...@gmail.com
 
Action: failed
Status: 5.7.1
Remote-MTA: dns; 
gmail-smtp-in.l.google.com
 
Diagnostic-Code: smtp; 550-5.7.1 [5.144.164.171      11] Our system has
    detected that this message is 550-5.7.1 not RFC 5322 compliant: 550-5.7.1
    Multiple 'From' headers found. 550-5.7.1 To reduce the amount of spam sent
    to Gmail, this message has been 550-5.7.1 blocked. Please visit 550-5.7.1
 
https://support.google.com/mail/?p=RfcMessageNonCompliant
 550 5.7.1 and
    review RFC 5322 specifications for more information. d30si556562wra.15 -
    gsmtp
 
Qui si parla di "multipli from", ma in realtà ce ne sta solo uno e non so cosa succede.
 
Avete idee, suggerimenti e/o soluzioni?
 
Grazie.

Magari hai scritto male, inviala ad un tuo account (non gmail :)) e guarda il sorgente.

 Magari hai scritto male, inviala ad un tuo account (non gmail :)) e guarda il sorgente.
 
mando la stessa email ad un indirizzo non gmail e funziona
la mando ad uno gmail e mi ritorna quell'errore


posta il sorgente della mail

; Fri, 13 Oct 2017 17:48:01 +0200 (CEST)
To: *******@
gmail.com
 
From: info@*******.it
Subject: Conferma richiesta Informazioni
MIME-Version: 1.0
Message-id: <5sxl44vyszgg.2xs6v73xohk44@localhost>
Date: 2017-10-13 17:48:02
X-Priority: 3
X-Mailer: PHP/5.4.4
Content-type: text/html; charset=1
from: info@*******.it
Reply-To: info@*******.it
X-Antivirus: Avast (VPS 171013-6, 13/10/2017), Outbound message
X-Antivirus-Status: Clean
 
 
 
<body>
<p>Gentile cliente, abbiamo ricevuto la sua email di richiesta prenotazione.</p>
<p>Riceverà risposta entro le prossime 12 ore.</p>
<p>Riepilogo delle prenotazione effettuata:</p>
 
<p><strong>Email</strong>: *******@
gmail.com
 </p>
<p><strong>Arrivo</strong>:  2017-10-12 </p>
<p><strong>Partenza</strong>:  2017-11-03 </p>
<p><strong>Persone</strong>:  1 </p>
<p>&nbsp;</p>
<p>Cordiali saluti,</p>
<p>Lo staff dell'Hotel Nicolaj, Polignano a Mare</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><br>
  <br>
</p>
<div id="DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2"><br /> <table style="border-top: 1px solid #D3D4DE;">
	<tr>
      <td style="width: 55px; padding-top: 18px;"><a href="
https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient
" target="_blank"><img src="
https://ipmcdn.avast.com/images/icons/icon-envelope-tick-round-orange-animated-no-repeat-v1.gif
" alt="" width="46" height="29" style="width: 46px; height: 29px;" /></a></td>
		<td style="width: 470px; padding-top: 17px; color: #41424e; font-size: 13px; font-family: Arial, Helvetica, sans-serif; line-height: 18px;">Mail priva di virus. <a href="
https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient
" target="_blank" style="color: #4453ea;">
www.avast.com
</a> 		</td>
	</tr>
</table>
<a href="#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2" width="1" height="1"> </a></div></body>
 
 
--AFE653EEF8.1507909682/m-r2.th.seeweb.it--

 Reply-To: info@*******.it
 
 
Magari mi confondo, ma anche io vedo due from.

Received: from mail.*******.it (unknown [151.45.87.82]) by 
m-r2.th.seeweb.it
 (Postfix) with ESMTPA id D76693F259 for <info@*******.it>; Fri, 13 Oct 2017 17:48:00 +0200 (CEST)
 
A parte i due from, che ci sono, l'origine è una ADSL ULL di Wind/Infostrada,
ma non registrata come server di posta. Se fai nslookup su mail.[omissis].it,
sei sicuro che ti dica 151.45.87.82?
 
Non è che stai facendo le prove da un sito di test su un serverino domestico,
o quasi? Perché in quel caso magari è normale che ti rimbalzi.
 
Leonardo
 
-- 
 
Ya se escucha sonar la metralla, ya el clarín toca fuego graneado:
ahora o nunca, muchachos arriba a acabar a estos hijos del diablo.


 
Si sto facendo le prove in locale, come faccio sempre
L'ip è quello del mio adsl, non del server mail
 
Cmq lunedì proverò a fare un test con uno scriptino online per verificare l'ipotesi che sia un problema di server locale

 ahora o nunca, muchachos arriba a acabar a estos hijos del diablo.
 
 
Secondo me non c'entra, nel senso che a lamentarsi del doppio from è il server 
smtp di google, che deve essere il server configurato nello script. Per cui da 
che ip parta è insignificante. Se Google (smtp) si lamenta del doppio from fa 
solo bene, abbiamo constatato che è vero!
 
Sempre ché tu non abbia visto qualcosa di diverso o io mi sia semplicemente 
fatto un film da deduzioni errate.

solo bene, abbiamo constatato che è vero!
 
Sì, scusa. Avrei dovuto dire "...è normale che ti rimbalzi COMUNQUE", ovvero:
lui sistema anche il From: extra; ma la mail, ci sta che non passi lo stesso.
 
Il server dello script è quello di Seeweb, che non pare avere problemi.


 
 
Scusate, mi sarò perso un passaggio: dove sta il doppio from???? Perchè ho capito che l'errore è quello, ma non lo vedo.


ok ok, ho visto solo ora a cosa vi riferite
e non me ne ero mai reso conto
 
la funzione che uso è questa
 
function SMTPmail($parametri)
	{
 
	  // set as global variable
	  global $variabili;
	  global $preferenze;
 
 
	 	//var_dump($parametri);
 
 
  		// get From address
	  if ( preg_match("/From:.*?[A-Za-z0-9\._%-]+\@[A-Za-z0-9\._%-]+.*/", $parametri['intestazione']))
	  {
 
 
		 preg_match("/[A-Za-z0-9\._%-]+\@[A-Za-z0-9\._%-]+/", $froms[0], $fromarr);
		 $from = $fromarr[0];
 
	  }
 
 
 
	  if ($from=="")
	  {
 
		$from=$parametri['da'];  
 
	  }
 
 
 
 
 
		//print_r($preferenze['smtp']);
 
	  // Open an SMTP connection
	  $cp = @fsockopen ($preferenze["smtp"]['server'], $preferenze["smtp"]['porta'], $errno, $errstr, 1);
	  if (!$cp)
	   return "Failed to even make a connection";
	  $res=fgets($cp,100);
	  //die ($res);
	  if(substr($res,0,3) != "220") return "Failed to connect";
 
	  // Say hello...
 
 
	  if ($preferenze['smtp']['ehlo'])
	  {
 
 
 
		 fputs($cp, "EHLO ".$preferenze["smtp"]['server']."\r\n");
			$res = fgets($cp, 515);
			if(substr($res,0,3) != "250") return "Failed to Introduce EHLO";
			do {
				$res = fgets($cp, 515);
			} while(substr($res, 3, 1) == "-");
 
	  }
	  else
	  {
	  	 fputs($cp, "HELO ".$preferenze["smtp"]['server']."\r\n");
	  	$res=fgets($cp,256);
	  	if(substr($res,0,3) != "250") return "Failed to Introduce HELO";
 
 
	  }
 
 
 
	  // perform authentication
	  fputs($cp, "auth login\r\n");
	  $res=fgets($cp,256);
	  if(substr($res,0,3) != "334") return "Failed to Initiate Authentication";
 
	  fputs($cp, base64_encode($preferenze["smtp"]['utente'])."\r\n");
	  $res=fgets($cp,256);
	  if(substr($res,0,3) != "334") return "Failed to Provide Username for Authentication";
 
	  fputs($cp, base64_encode($preferenze["smtp"]['password'])."\r\n");
	  $res=fgets($cp,256);
	  if(substr($res,0,3) != "235") return "Failed to Authenticate";
 
	  // Mail from...
	  fputs($cp, "MAIL FROM:<".$from.">\r\n");
	  $res=fgets($cp,256);
	  if(substr($res,0,3) != "250") return "MAIL FROM failed";
 
	  // Rcpt to...
	  fputs($cp, "RCPT TO:<".$parametri['a'].">\r\n");
 
	  $res=fgets($cp,256);
	  if(substr($res,0,3) != "250") return "RCPT TO failed";
 
	  // Data...
	  fputs($cp, "DATA\r\n");
	  $res=fgets($cp,256);
	  if(substr($res,0,3) != "354") return "DATA failed";
 
	//print $parametri['intestazione']."<br>";
 
	  // Send To:, From:, Subject:, other headers, blank line, message, and finish
	  // with a period on its own line (for end of message)
 
	echo  "To: ".$parametri['a']."\r\nFrom: ".$from."\r\nSubject: ".$parametri['titolo']
	  	."\r\n".$parametri['intestazione']."\r\n\r\n".$parametri['testo']."\r\n.\r\n";
 
	  fputs($cp, "To:".$parametri['a']."\r\nFrom:".$from."\r\nSubject:".$parametri['titolo']
	  	."\r\n".$parametri['intestazione']."\r\n\r\n".$parametri['testo']."\r\n.\r\n");
	  $res=fgets($cp,256);
	 // print $res;
	  if(substr($res,0,3) != "250") return "Message Body Failed";
 
	  // ...And time to quit...
	  fputs($cp,"QUIT\r\n");
	  $res=fgets($cp,256);
	  if(substr($res,0,3) != "221") return "QUIT failed";
 
		//die("qui");
	  return "0";
	}
 
 
e ad oggi non mi aveva mai dato problemi
 
quale dei due from devo togliere a questo punto?

la funzione che uso è questa
 
Da' retta a un bischero: importati una classe che supporti SMTP.
 
Vedrai poi se 'un mi rammenti.
