2013-10-21 279 views
1

我写了一个小PHP脚本执行时工作正常发送邮件不会工作:PHP脚本时,通过浏览器执行,但在命令行

<?php 
$phpPath = shell_exec("which php"); 

print "$phpPath\n"; 

$uid = posix_getuid(); 
$userinfo = posix_getpwuid($uid); 
print_r($userinfo); 
print "\n"; 


    $to = "[email protected]_company_mail.com"; 
    $subject = "Test mail"; 
    $message = "Hello! This is a simple email message."; 
    $from = "[email protected]"; 
    $headers = "From:" . $from; 

    $res = mail($to,$subject,$message,$headers); 

    print_r(error_get_last()); 
    if($res){ 
    echo "Mail Sent.\n"; 
    }else{ 
    echo "Mail was'nt Sent\n"; 

    } 
?> 

这让我发疯的事情是,当我执行这个从命令行脚本它很好地工作: 的/ usr /斌/ PHP

阵列 ( [名称] =>守护程序 [passwd中] => X [UID] => 1 [GID] => 1 [gecos] =>守护进程 [dir] =>/usr/sbin [shell] =>/bin/sh )

Mail Sent。

但是当我从远程浏览器执行它这是我得到:

在/ usr/bin中/ PHP

阵列 ( [名] =>守护 [passwd文件] => X [UID] => 1 [GID] => 1 [GECOS] =>守护程序 [DIR] =>/usr/sbin目录 [外壳] =>/bin/sh的 )

邮件was'nt发送

有什么想法? 提前10倍:)

回答

相关问题