php-windows Digest 4 Nov 2009 15:19:04 -0000 Issue 3720

Topics (messages 29686 through 29693):

Re: help with mail on IIS 6
        29686 by: Niel Archer
        29687 by: dot net noob
        29688 by: Richard Quadling
        29689 by: Jan Svoboda
        29690 by: Niel Archer
        29691 by: Niel Archer
        29692 by: Niel Archer
        29693 by: dot net noob

Administrivia:

To subscribe to the digest, e-mail:
        php-windows-digest-subscr...@lists.php.net

To unsubscribe from the digest, e-mail:
        php-windows-digest-unsubscr...@lists.php.net

To post to the list, e-mail:
        php-wind...@lists.php.net


----------------------------------------------------------------------
--- Begin Message ---
> Hi All: Just joined the list.
> 
> I'm having problems configuring mail in PHP. I have PHP 5.2.9 installed on 
> server 2003 std with sp2 installed. The default SMTP service is running. 
> I'm running Wordpress without any problems, except for configuring mail.
> 
> My php.ini file looks like:
> 
> [mail function]
> ; For Win32 only.
> ;smtp = localhost
> ;smtp = 127.0.0.1
> smtp = 192.168.1.6
> smtp_port = 25
> 
> ; For Win32 only.
> sendmail_from = m...@mydomain.com
> 
> I've tried each of the three server addresses above, and none of them work. 
> If I try to run a simple test like:
> 
>     <?php
>     $to = "m...@mydomain.com";
>     $subject = "Test mail";
>     $message = "Hello! This is a simple email message.";
>     $from = "m...@mydomain.com";
>     $headers = "From: $from";
>     mail($to,$subject,$message,$headers);
>     echo "Mail Sent.";
>     ?>

$headers must be terminated by "\r\n"

> I don't receive an error, but the mail does not get sent. There's no entry 
> in the SMTP log, and nothing gets dropped in the "pickup" or "queue" folders 
> for the SMTP service.
> 
> I tried explicitly adding "allow" entries in the SMTP configuration for the 
> above names/IPs, and also in the "relaying" section, but still nothing. What 
> can I do to debug?
> 
> TIA- da' noob 
> 
> 
> -- 
> PHP Windows Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
> 

--
Niel Archer



--- End Message ---
--- Begin Message ---
On Tue, 03 Nov 2009 22:19:53 GMT Niel Archer <n...@chance.now> wrote

> > Hi All: Just joined the list.
> >
> > I'm having problems configuring mail in PHP. I have PHP 5.2.9 installed on
> > server 2003 std with sp2 installed. The default SMTP service is running.
> > I'm running Wordpress without any problems, except for configuring mail.
> >
> > My php.ini file looks like:
> >
> > [mail function]
> > ; For Win32 only.
> > ;smtp = localhost
> > ;smtp = 127.0.0.1
> > smtp = 192.168.1.6
> > smtp_port = 25
> >
> > ; For Win32 only.
> > sendmail_from = m...@mydomain.com
> >
> > I've tried each of the three server addresses above, and none of them work.
> >
> > If I try to run a simple test like:
> >
> >     <?php
> >     $to = "m...@mydomain.com";
> >     $subject = "Test mail";
> >     $message = "Hello! This is a simple email message.";
> >     $from = "m...@mydomain.com";
> >     $headers = "From: $from";
> >     mail($to,$subject,$message,$headers);
> >     echo "Mail Sent.";
> >     ?>
> 
> $headers must be terminated by "\r\n"

Thanks Neil...I went back to the php.net docs for "mail" and picked up their
example, with this syntax:

<?php
$to      = 'y...@you.com';
$subject = 'Test mail';
$message = 'hello';
$headers = 'From: m...@me.com' . "\r\n" .
    'Reply-To: w...@me.com' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
?> 

(I've replaced the actual "to" and "from" to dummy addresses)...still doesn't
work...I don't get an error when running the script, but no mail is sent.



--- End Message ---
--- Begin Message ---
2009/11/3 dot net noob <n...@my508.com>:
> On Tue, 03 Nov 2009 22:19:53 GMT Niel Archer <n...@chance.now> wrote
>
>> > Hi All: Just joined the list.
>> >
>> > I'm having problems configuring mail in PHP. I have PHP 5.2.9 installed on
>> > server 2003 std with sp2 installed. The default SMTP service is running.
>> > I'm running Wordpress without any problems, except for configuring mail.
>> >
>> > My php.ini file looks like:
>> >
>> > [mail function]
>> > ; For Win32 only.
>> > ;smtp = localhost
>> > ;smtp = 127.0.0.1
>> > smtp = 192.168.1.6
>> > smtp_port = 25
>> >
>> > ; For Win32 only.
>> > sendmail_from = m...@mydomain.com
>> >
>> > I've tried each of the three server addresses above, and none of them work.
>> >
>> > If I try to run a simple test like:
>> >
>> >     <?php
>> >     $to = "m...@mydomain.com";
>> >     $subject = "Test mail";
>> >     $message = "Hello! This is a simple email message.";
>> >     $from = "m...@mydomain.com";
>> >     $headers = "From: $from";
>> >     mail($to,$subject,$message,$headers);
>> >     echo "Mail Sent.";
>> >     ?>
>>
>> $headers must be terminated by "\r\n"
>
> Thanks Neil...I went back to the php.net docs for "mail" and picked up their
> example, with this syntax:
>
> <?php
> $to      = 'y...@you.com';
> $subject = 'Test mail';
> $message = 'hello';
> $headers = 'From: m...@me.com' . "\r\n" .
>    'Reply-To: w...@me.com' . "\r\n" .
>    'X-Mailer: PHP/' . phpversion();
> mail($to, $subject, $message, $headers);
> ?>
>
> (I've replaced the actual "to" and "from" to dummy addresses)...still doesn't
> work...I don't get an error when running the script, but no mail is sent.
>
>
>
> --
> PHP Windows Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>

Can you telnet to port 25 on the server hosting the SMTP service?

Use something like Wireshark to watch what actually happens?

Does the mail() call return true or false?

Can you upgrade to PHP 5.30 and try setting the mail.log [1]?

Regards,

Richard.

[1] http://docs.php.net/manual/en/mail.configuration.php#ini.mail.log


-- 
-----
Richard Quadling
"Standing on the shoulders of some very clever giants!"
EE : http://www.experts-exchange.com/M_248814.html
Zend Certified Engineer : http://zend.com/zce.php?c=ZEND002498&r=213474731
ZOPA : http://uk.zopa.com/member/RQuadling

--- End Message ---
--- Begin Message ---
Hi,
Have you tried smtp = 127.0.0.1 in php.ini ? I looks like PHP can't even connect to the smtp service.

     Jan Svoboda

Odesláno z iPhone

4.11.2009 v 0:53, Richard Quadling <rquadl...@googlemail.com>:

2009/11/3 dot net noob <n...@my508.com>:
On Tue, 03 Nov 2009 22:19:53 GMT Niel Archer <n...@chance.now> wrote

Hi All: Just joined the list.

I'm having problems configuring mail in PHP. I have PHP 5.2.9 installed on server 2003 std with sp2 installed. The default SMTP service is running. I'm running Wordpress without any problems, except for configuring mail.

My php.ini file looks like:

[mail function]
; For Win32 only.
;smtp = localhost
;smtp = 127.0.0.1
smtp = 192.168.1.6
smtp_port = 25

; For Win32 only.
sendmail_from = m...@mydomain.com

I've tried each of the three server addresses above, and none of them work.

If I try to run a simple test like:

    <?php
    $to = "m...@mydomain.com";
    $subject = "Test mail";
    $message = "Hello! This is a simple email message.";
    $from = "m...@mydomain.com";
    $headers = "From: $from";
    mail($to,$subject,$message,$headers);
    echo "Mail Sent.";
    ?>

$headers must be terminated by "\r\n"

Thanks Neil...I went back to the php.net docs for "mail" and picked up their
example, with this syntax:

<?php
$to      = 'y...@you.com';
$subject = 'Test mail';
$message = 'hello';
$headers = 'From: m...@me.com' . "\r\n" .
   'Reply-To: w...@me.com' . "\r\n" .
   'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
?>

(I've replaced the actual "to" and "from" to dummy addresses)...still doesn't work...I don't get an error when running the script, but no mail is sent.



--
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Can you telnet to port 25 on the server hosting the SMTP service?

Use something like Wireshark to watch what actually happens?

Does the mail() call return true or false?

Can you upgrade to PHP 5.30 and try setting the mail.log [1]?

Regards,

Richard.

[1] http://docs.php.net/manual/en/mail.configuration.php#ini.mail.log


--
-----
Richard Quadling
"Standing on the shoulders of some very clever giants!"
EE : http://www.experts-exchange.com/M_248814.html
Zend Certified Engineer : http://zend.com/zce.php?c=ZEND002498&r=213474731
ZOPA : http://uk.zopa.com/member/RQuadling

--
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


--- End Message ---
--- Begin Message ---
> On Tue, 03 Nov 2009 22:19:53 GMT Niel Archer <n...@chance.now> wrote
> 
> > > Hi All: Just joined the list.
> > >
> > > I'm having problems configuring mail in PHP. I have PHP 5.2.9 installed on
> > > server 2003 std with sp2 installed. The default SMTP service is running.
> > > I'm running Wordpress without any problems, except for configuring mail.
> > >
> > > My php.ini file looks like:
> > >
> > > [mail function]
> > > ; For Win32 only.
> > > ;smtp = localhost
> > > ;smtp = 127.0.0.1
> > > smtp = 192.168.1.6
> > > smtp_port = 25
> > >
> > > ; For Win32 only.
> > > sendmail_from = m...@mydomain.com
> > >
> > > I've tried each of the three server addresses above, and none of them 
> > > work.
> > >
> > > If I try to run a simple test like:
> > >
> > >     <?php
> > >     $to = "m...@mydomain.com";
> > >     $subject = "Test mail";
> > >     $message = "Hello! This is a simple email message.";
> > >     $from = "m...@mydomain.com";
> > >     $headers = "From: $from";
> > >     mail($to,$subject,$message,$headers);
> > >     echo "Mail Sent.";
> > >     ?>
> > 
> > $headers must be terminated by "\r\n"
> 
> Thanks Neil...I went back to the php.net docs for "mail" and picked up their
> example, with this syntax:
> 
> <?php
> $to      = 'y...@you.com';
> $subject = 'Test mail';
> $message = 'hello';
> $headers = 'From: m...@me.com' . "\r\n" .
>     'Reply-To: w...@me.com' . "\r\n" .
>     'X-Mailer: PHP/' . phpversion();
> mail($to, $subject, $message, $headers);
> ?> 

You still aren't terminating each line of $headers with the "\r\n" pair.
This is required by the RFC, and failing to do so can produce unexpected
results, depending on the software processing it.

> (I've replaced the actual "to" and "from" to dummy addresses)...still doesn't
> work...I don't get an error when running the script, but no mail is sent.

I hope these two addresses are different. I had problems getting mail() to
work when they are the same. Never found out why ;-)


You should test the return value to see if the agent is accepting the
mail. Something like:

if (! mail($to, $subject, $message, $headers)) {
    echo "Failure to accept mail!";
}

is enough to know if it's accepted or not.

--
Niel Archer



--- End Message ---
--- Begin Message ---
Hi
if you just want to have mail working, and are not insistent upon using
mail(), I would suggest looking at the PEAR::Mail package. It is worth
the effort.

--
Niel Archer



--- End Message ---
--- Begin Message ---
> On Tue, 03 Nov 2009 22:19:53 GMT Niel Archer <n...@chance.now> wrote
> 
> > > Hi All: Just joined the list.
> > >
> > > I'm having problems configuring mail in PHP. I have PHP 5.2.9 installed on
> > > server 2003 std with sp2 installed. The default SMTP service is running.
> > > I'm running Wordpress without any problems, except for configuring mail.
> > >
> > > My php.ini file looks like:
> > >
> > > [mail function]
> > > ; For Win32 only.
> > > ;smtp = localhost
> > > ;smtp = 127.0.0.1
> > > smtp = 192.168.1.6
> > > smtp_port = 25
> > >
> > > ; For Win32 only.
> > > sendmail_from = m...@mydomain.com
> > >
> > > I've tried each of the three server addresses above, and none of them 
> > > work.
> > >
> > > If I try to run a simple test like:
> > >
> > >     <?php
> > >     $to = "m...@mydomain.com";
> > >     $subject = "Test mail";
> > >     $message = "Hello! This is a simple email message.";
> > >     $from = "m...@mydomain.com";
> > >     $headers = "From: $from";
> > >     mail($to,$subject,$message,$headers);
> > >     echo "Mail Sent.";
> > >     ?>
> > 
> > $headers must be terminated by "\r\n"
> 
> Thanks Neil...I went back to the php.net docs for "mail" and picked up their
> example, with this syntax:
> 
> <?php
> $to      = 'y...@you.com';
> $subject = 'Test mail';
> $message = 'hello';
> $headers = 'From: m...@me.com' . "\r\n" .
>     'Reply-To: w...@me.com' . "\r\n" .
>     'X-Mailer: PHP/' . phpversion();
> mail($to, $subject, $message, $headers);
> ?> 
> 
> (I've replaced the actual "to" and "from" to dummy addresses)...still doesn't
> work...I don't get an error when running the script, but no mail is sent.

Do not use to or from fields in the 'User <u...@address.com>' , is
doesn't work on Windows.  If I recall correctly, the function silently
fails with these.

> -- 
> PHP Windows Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
> 

--
Niel Archer



--- End Message ---
--- Begin Message ---
Thanks for everyone's help and suggestions.

Mail() was definitely failing when I added some code to echo back the boolean response.

I tried sending to a different server where I could monitor what was going on, and Mail() opened a connection through the local SMTP service, but the service was sending a HELO of the Windows server name, not a FQDN, and my other mailserver was rejecting based on that. If I added a rule to allow relaying from the PHP server, mail went through fine.

That tells me PHP is able to control the local SMTP service...that is, it's not a security issue on the server itself.

Now, I just have to figure out why it's not working if "localhost" is specified in php.ini.

Unfortunately, this is a production server, and I can't change php.ini to test except during off hours :(

--------------------------------------------------
From: "Niel Archer" <n...@chance.now>
Sent: Tuesday, November 03, 2009 7:36 PM
To: <php-wind...@lists.php.net>
Subject: Re: [PHP-WIN] req: help with mail on IIS 6

On Tue, 03 Nov 2009 22:19:53 GMT Niel Archer <n...@chance.now> wrote

> > Hi All: Just joined the list.
> >
> > I'm having problems configuring mail in PHP. I have PHP 5.2.9 > > installed on > > server 2003 std with sp2 installed. The default SMTP service is > > running. > > I'm running Wordpress without any problems, except for configuring > > mail.
> >
> > My php.ini file looks like:
> >
> > [mail function]
> > ; For Win32 only.
> > ;smtp = localhost
> > ;smtp = 127.0.0.1
> > smtp = 192.168.1.6
> > smtp_port = 25
> >
> > ; For Win32 only.
> > sendmail_from = m...@mydomain.com
> >
> > I've tried each of the three server addresses above, and none of them > > work.
> >
> > If I try to run a simple test like:
> >
> >     <?php
> >     $to = "m...@mydomain.com";
> >     $subject = "Test mail";
> >     $message = "Hello! This is a simple email message.";
> >     $from = "m...@mydomain.com";
> >     $headers = "From: $from";
> >     mail($to,$subject,$message,$headers);
> >     echo "Mail Sent.";
> >     ?>
>
> $headers must be terminated by "\r\n"

Thanks Neil...I went back to the php.net docs for "mail" and picked up their
example, with this syntax:

<?php
$to      = 'y...@you.com';
$subject = 'Test mail';
$message = 'hello';
$headers = 'From: m...@me.com' . "\r\n" .
    'Reply-To: w...@me.com' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
?>

(I've replaced the actual "to" and "from" to dummy addresses)...still doesn't
work...I don't get an error when running the script, but no mail is sent.

Do not use to or from fields in the 'User <u...@address.com>' , is
doesn't work on Windows.  If I recall correctly, the function silently
fails with these.

--
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


--
Niel Archer



--
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


--- End Message ---

Reply via email to