Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

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?

share|improve this question
When you deliver via ssh, are you using sudo, or are you root, or is your local account an administrator? Does the user exim runs as have permission to run the php script? – jj33 Jun 27 '09 at 17:40
Your exim logs should show activity, errors, that sort of thing. It's quite likely to be helpful. – womble Jul 10 '11 at 11:37

If you can cleanup and post your exim.conf I can probably tell you. W/o seeing that, my best guess is that your router configuration isn't sending the email coming in from a remote server to the pipe_transport. Examine your routers. Run exim with the command "exim -bh " and watch the output. It should tell you what the config is telling it to do.

share|improve this answer
Exim Configuration File: The pipe_transport is set... I have already done an exim -bh and everything looks OK. It says it is supposed to be piping it to the PHP script (which it does do locally; it's just remotely that's the problem). – John Jun 27 '09 at 15:02
You're calling this pipe out of an entry in /etc/aliases? Are you certain it's not executing the script at all, or is the script just not functioning properly when called by exim? (I'd temporarily replace the script with something that will, say, print a test message. Assuming exim actually runs the script, you'll get a bounce message back from exim, proving that the script ran.) – Evan Anderson Jun 29 '09 at 13:48

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.