Solved

Manual VPS - PHP mail() and PEAR smtp taking a long time, sending three emails

Posted on 2011-02-15
7
1,274 Views
Last Modified: 2012-05-11
I was running a website on a shared hosting account.  Part of this website involved sending a lot of messages via PHP mail().  Unfortunately, all shared hosting providers I could find had a cap on how many emails could be sent per hour.

So, I decided to get a VPS.  I am cheap, so I thought I would get an unmanaged one with cpanel.  Everything is fine and dandy, I have everything up and running.  The only problem I have, is that every message sent by php mail takes about 30 seconds to send.  Not only that, but it sends it three times.  The same thing happens when I send via the PEAR SMTP package.  Takes about 30 seconds, and sends three times.

It could be a DNS issue, I had no idea how to set it up, so I guessed:
A-type: @ smsalertsonline.com 174.36.99.28
A-type: www.smsalertsonline.com 174.36.99.28
MX entry: @ smsalertsonline.com - Mailer-server: smsalertsonline.com

Any ideas?  Any other info you need?
0
Comment
Question by:rom109
  • 4
  • 3
7 Comments
 

Author Comment

by:rom109
ID: 34899749
In case it is helpful, I am running a Linux, CentOS box with Cpanel:
/etc/hosts:
127.0.0.1 localhost.localdomain localhost server1.smsalertsonline.com
# Auto-generated hostname. Please do not remove this comment.
174.36.99.28 server1.smsalertsonline.com web  server1 smsalertsonline.com

/etc/resolv.conf:
nameserver 4.2.2.1
nameserver 4.2.2.2
0
 
LVL 3

Expert Comment

by:pete-mcpetey
ID: 34908499
You will want to determine if this is an issue with the mail server (exim) or with PHP/Apache.
Can you start by sending a unique message, and then displaying the mail logs? For example, if you put "foo@bar.com" as the recipient, you can run this SSH command to find the relevant logs. Thanks.

after submitting the form, grep for the email address you used:
# cat /var/log/maillog | grep "foo@bar.com"
(please let us know what results you receive).
# cat /var/log/exim_mainlog | grep "foo@bar.com"

Let us know the results of the logs (if there are 3 entries, most likely this is PHP submitting the form 3 times).
0
 
LVL 3

Expert Comment

by:pete-mcpetey
ID: 34908529
Also, what email client are you using? For example, there was a problem with Outlook duplicating the message. If you use the webmail to check the mail, does that also show triplicate messages?

http://support.microsoft.com/kb/885870
0
Back Up Your Microsoft Windows Server®

Back up all your Microsoft Windows Server – on-premises, in remote locations, in private and hybrid clouds. Your entire Windows Server will be backed up in one easy step with patented, block-level disk imaging. We achieve RTOs (recovery time objectives) as low as 15 seconds.

 

Author Comment

by:rom109
ID: 34909479
Pete, you were right, the triplicate messages were just an outlook bug that has since been fixed.  But the long wait on sendmail is still a problem.

When I use php mail() to send a message to "foo@bar.com", /var/log/maillog has no mention of foo@bar.com, and exim_mainlog just says "2011-02-16 12:27:41 1Ppm5r-0008IF-7Q ** foo@bar.com R=fail_remote_domains: The mail server could not deliver mail to foo@bar.com.  The account or domain may not exist, they may be blacklisted, or missing the proper dns entries."

And it took 27 seconds to send.  Could I just have a slow server?  Is that a normal wait time?
0
 

Author Comment

by:rom109
ID: 34909552
I noticed also that I keep changing /etc/resolv.conf to my nameservers, but they keep changing back to 4.2.2.1 and 4.2.2.2.  Could this slow things down?  How can I  get it to stay as my nameservers?
0
 

Author Comment

by:rom109
ID: 34910762
Also when I SMTP to a different server (that sends fine on its own) it still takes about 30 seconds.  So perhaps the problem isn't sendmail, but an email setting somewhere?
0
 
LVL 3

Accepted Solution

by:
pete-mcpetey earned 500 total points
ID: 34911113
Your asking 3 different questions. Please open a new thread for cPanel DNS Resolvers and for Mail Queuing. I don't believe these 3 problems are related.
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction This article explores the design of a cache system that can improve the performance of a web site or web application.  The assumption is that the web site has many more “read” operations than “write” operations (this is commonly the ca…
There was an incident about the POP3 issue for the double read receipts and delivery receipts in Exchange 2013.  There was huge research been done and found solution for the duplicate mails. Especially when the user gets  duplicate mails.
The viewer will learn how to create and use a small PHP class to apply a watermark to an image. This video shows the viewer the setup for the PHP watermark as well as important coding language. Continue to Part 2 to learn the core code used in creat…
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.

832 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question