Note that there are some explanatory texts on larger screens.

plurals
  1. POPHP - Pear Mail: authentication failure, but telnet works
    primarykey
    data
    text
    <p>I'm stuck on an authentication problem. I want to send mail through an external SMTP server (running Microsoft Exchange 2010) using PHP. When I send a mail within a telnet session, it works fine:</p> <pre><code>telnet mail.myweb.com 25 Trying 100.200.300.400... Connected to mail.myweb.com. Escape character is '^]'. 220 mail.myweb.com SMTP Service ready AUTH LOGIN 334 VXNlcm5hbWU6 bXlzZWNyZXR1c2VybmFtZQ== 334 UGFzc3dvcmQ6 bXlzZWNyZXRwYXNz 235 Authentication successful MAIL FROM:user1@myweb.com 250 &lt;user1@myweb.com&gt; ... Sender ok RCPT TO:fakeuser@fakeweb.com 250 Requested mail action okay, completed. DATA 354 Start mail input; end with &lt;CR&gt;&lt;LF&gt;.&lt;CR&gt;&lt;LF&gt; SUBJECT:test email   "test data" . 250 Requested mail action okay, completed. </code></pre> <p>But when I try the Pear Mail code, I get an authentication failure. This is the debug response:</p> <pre><code>DEBUG: Recv: 220 mail.myweb.com SMTP Service ready DEBUG: Send: EHLO localhost DEBUG: Recv: 500 Syntax error, command unrecognized DEBUG: Send: HELO localhost DEBUG: Recv: 250 Requested mail action okay, completed. DEBUG: Send: RSET DEBUG: Recv: 250 Requested mail action okay, completed. authentication failure [SMTP: SMTP server does not support authentication (code: 250, response: Requested mail action okay, completed.)] DEBUG: Send: QUIT DEBUG: Recv: 221 mail1.myweb.com closing transmission channel </code></pre> <p>And this is the PHP code:</p> <pre><code>&lt;?php require_once "Mail.php"; $from = "user1@myweb.com"; $to = "fakeuser@fakeweb.com"; $subject = "Hi!"; $body = "Hi,\n\nHow are you?"; $host = "mail.myweb.com"; $port = "25"; $username = "mysecretusername"; $password = "mysecretpass"; $headers = array ('From' =&gt; $from, 'To' =&gt; $to, 'Subject' =&gt; $subject); $smtp = Mail::factory('smtp', array ('host' =&gt; $host, 'port' =&gt; $port, 'debug' =&gt; true, 'auth' =&gt; true, 'username' =&gt; $username, 'password' =&gt; $password)); $mail = $smtp-&gt;send($to, $headers, $body); if (PEAR::isError($mail)) { echo("&lt;p&gt;" . $mail-&gt;getMessage() . "&lt;/p&gt;"); } else { echo("&lt;p&gt;Message successfully sent!&lt;/p&gt;"); } ?&gt; </code></pre> <p>The PHP code works with others SMTP servers, so there is no problem with Pear Mail. Username/pass are ok. Do you have any ideas what's wrong?</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload