PHP piping mail to sendmail quickly


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers PHP piping mail to sendmail quickly
# 1  
Old 03-11-2006
PHP piping mail to sendmail quickly

In order to prevent any php processes on our web server from waiting
for sendmail hangups (name resolution issues, etc), we wrap sendmail
in a simple shell script and push it to the background and disown the
process so that any php script on our site can continue on processing
code and not have to wait for sendmail to return.

So, in php.ini we have the following setting:

sendmail_path = "/usr/local/bin/phpsendmail.sh -t -i"

and in phpsendmail.sh we have the following:

#!/bin/bash
cat /dev/stdin | /usr/bin/sendmail "$@" &


The problem we are encountering is that it seems to take quite a while
(in computer time) for a lengthy (50K) text email to actually get
piped into sendmail this way. When a script pushes out 20 emails of
this size, we are seeing it take approximately 20-25 seconds. We have
some background processes that send need to send batched email from a
database table (for immediate delivery, not queued) and we would like
to speed the process up, while still using this concept of pushing
each sendmail process out to the background. What can we do to speed
up the process of piping this information through the wrapper script
and into the sendmail process?

Thanks in advance for any advice....

GM
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Web Development

Gmail very slow to receive Sendmail/PHP Mail

Okay, I have searched the forums and couldn't really find a topic on this, so I decided to start one. But I decided to start a ncurses discussion forum recently and one thing I noticed while getting it going is that when mail is sent out via Sendmail or PHP Mail, Gmail is /very/ slow to receive it.... (2 Replies)
Discussion started by: Phobos D'thorga
2 Replies

2. Proxy Server

How to send mail (sendmail) for php mail()?

PHP mail() function doesn't work. Nor does sendmail: loaded system configuration file /etc/msmtprc ignoring user configuration file /home/xi/.msmtprc: No such file or directory falling back to default account using account default from /etc/msmtprc host = xsi port = 25 proxy host = (not... (1 Reply)
Discussion started by: Xcislav
1 Replies

3. Shell Programming and Scripting

mail or sendmail ?

1. I need to send emails using a shell script on linux. I want to use the most widespread method (the preferred method). Is one considered deprecated in favor of the other? Which, mail or sendmail ? 2. Now, without trying to favor mail in the first question: How can I include a From: mail... (1 Reply)
Discussion started by: limmer
1 Replies

4. UNIX for Advanced & Expert Users

Piping Mail with Exim Only Works Locally

Whenever I send an email to my catchall alias via SSH (i.e., locally), Exim successfully pipes the e-mail to a PHP script, as I told it to do. However, when I try to send an e-mail to my catchall alias via my e-mail client (i.e., remotely), Exim won't pipe the e-mail. Any ideas? My exim.conf... (0 Replies)
Discussion started by: Zhay
0 Replies

5. Linux

Restrict mail from Sendmail

Hello All, i have configured sendmail and trying to set a limit on mail Ex: If i have send any mail to a email-if that doesn'e exists, i want that after trying for 3 days it should stops sending that mail to user and send a mail to the sender that " sending mail failed , any messaged... (1 Reply)
Discussion started by: saurabh84g
1 Replies

6. Shell Programming and Scripting

piping output from PHP file into variable

Hi. I have a script like so: #!/bin/bash download='php /var/www/last.php' echo $download if $downloadHow do I pipe the output of the php file into a variable, as when i run the if statement, it just echos the file output to the screen and does not actually consider the output (it will be... (2 Replies)
Discussion started by: daydreamer
2 Replies

7. Solaris

sendmail mail server help

Hello guys, Am trying to enable/start sendmail in Solaris 10. I tried using scvadm and also did it using the /etc/init.d/sendmail restart but no effect. Just returns to the prompt. No errors nothing. I checked if it is running using ps -eaf | grep sendmail, not running :( . I checked the logs... (9 Replies)
Discussion started by: rcmrulzz
9 Replies

8. UNIX for Dummies Questions & Answers

need solution for this quickly. please quickly.

Write a nawk script that will produce the following report: ***FIRST QUARTERLY REPORT*** ***CAMPAIGN 2004 CONTRIBUTIONS*** ------------------------------------------------------------------------- NAME PHONE Jan | ... (5 Replies)
Discussion started by: p.palakj.shah
5 Replies

9. UNIX for Dummies Questions & Answers

Sendmail - forwarding mail

quick question. I have a webserver that has various scripts for user registration and ect on it. I want to post (mail) these to myself - however I am a bit stuck on how to configure sendmail to do this. The hosting partner that I use has provided me with the use of their relay to send on the... (1 Reply)
Discussion started by: warrend
1 Replies

10. UNIX for Dummies Questions & Answers

blocking mail using sendmail

Hi, I am using sendmail 8.9.1 and trying to block email from certain domain/user. How could I do that? TQ (4 Replies)
Discussion started by: liyas
4 Replies
Login or Register to Ask a Question
mailstats(8)						      System Manager's Manual						      mailstats(8)

NAME
mailstats - Displays statistics about mail traffic SYNOPSIS
mailstats [-o] [-C cffile [-f stfile] FLAGS
Do not display the name of the mailer in the output. Use cffile as the name of the sendmail "cf" file instead of /var/adm/sendmail/send- mail.cf. Use stfile as the input statistics file instead of /var/adm/sendmail/sendmail.st. DESCRIPTION
The mailstats command reads the information in the /var/adm/sendmail/sendmail.st file (or in the file specified with the -f flag), formats it, and writes it to standard output. Note also that you can change the location of the sendmail.st file by editing its pathname in the sendmail.cf file. EXAMPLES
The format of the information is shown in the following example, in which the first field (M) contains a number that indicates the position of that mailer in the sendmail.cf file, starting at 0 (zero). For example, the first mailer in the sendmail.cf file corresponds to the number 0 in the mailstats display, the second mailer corresponds to the number 1, and so on. Statistics from Thu Feb 17 11:20:01 2000 M msgsfr bytes_from msgsto bytes_to msgsrej msgsdis Mailer 1 50 77K 1 3K 0 0 local 6 43 59K 58 99K 0 0 smtp ============================================================ T 93 136K 59 102K 0 0 The fields in the report have the following meanings: Indicates the position of the mailer in the sendmail.cf file. Indicates the number of messages received by the local machine from the indicated mailer. Indicates the number of bytes in the messages received by the local machine from the indicated mailer. Indicates the number of messages sent from the local machine using the indicated mailer. Indicates the number of bytes in the messages sent from the local machine using the indicated mailer. Indicates the number of rejected messages. Indicates the number of discarded messages. Indicates the name of the mailer. If sendmail transmits mail directly to a file, such as the dead.letter file or an alias target, the message and byte counts are credited to the prog mailer, as defined in the sendmail.cf file. However, mailstats will still default to var/adm/sendmail/sendmail.st. FILES
Specifies the command path Contains system statistics Contains configuration information for sendmail RELATED INFORMATION
Commands: sendmail(8) delim off mailstats(8)