2009-11-13 166 views
-1

我开发了一个使用Perl CGI和C++的数据库。我在将结果发送至邮件时遇到问题。我用下面的代码:为什么从我的Perl CGI脚本中调用mutt失败?

print LOG "[",`date`,"] Sending mail to $email\n"; 
system (qq{mutt -s "MMM" -a $zip_file $email < $job_id}); 
if ($? == 0) { 
     print LOG "[",`date`,"] Sending mail to $email :: SUCCESS ::\n"; 
}else { 
     print LOG "[",`date`,"] Sending mail to $email :: FAILED ::\n"; 
} 

close LOG; 
+1

如果你在错误中包含了这个代码应该运行的环境的一些细节,这将有所帮助。 – heferav 2009-11-13 09:08:41

+0

什么是错误信息等? Stackoverflow尚未实现Psychic功能。 :) – 2009-11-13 21:49:07

+1

C++与这个问题中的任何事情有什么关系? – 2009-11-13 21:50:17

回答

0

你看到了什么错误?

特别是什么在$!

这可能是CGI进程不能执行马特 - 怎么样登录脚本的用户名和当前路径:

print LOG getpwuid($<) . "\n"; 
print LOG $ENV{PATH} . "\n"; 

是笨蛋的路径可执行文件的位置,并执行该用户(可能是“阿帕奇')有权执行它?

0

你可能还想看看使用Net :: SMTP模块,它将直接与邮件服务器通信,而不是依赖于系统工具。这是一个更便携的解决方案,并避免了整个权限问题。

相关问题