1

私のホストは SquirrelMail を使用しています。Squirrel パネルからメールを送信できるだけでなく、メールを受信することもできます。テストする簡単なコードを取りました:

$to      = 'test@gmail.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
    'Reply-To: webmaster@example.com' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();

if(mail($to, $subject, $message, $headers)){
    echo '1';
}else echo '2';

phpinfo()

SMTP localhost
smtp_port 25
sendmail_from no value    |    no value 
sendmail_path /usr/sbin/sendmail -t -i -f **MAIL**  |   /usr/sbin/sendmail -t -i

where **MAIL** is my personal mail, not the one, I want to send from

しかし、私のスクリプトではメールを送信できません。2. wtf ? を受け取ります。

4

2 に答える 2

0

$to は、テストしたときに有効なアドレスであったと仮定しています。テスト コードに問題はありません。ホストで実行したところ、Gmail アカウントにメールが届きました。

私の仮定は、ホストがsendmail経由で電子メールを構成していないということです。SquirrelMail はおそらく代わりに SMTP を使用します。簡単な Google があれば、使用できる SMTP クラスがすでにいくつかあります。

簡単な phpinfo() を実行して、次のようなものを探します

sendmail_path   /usr/bin/sendmail -t -i /usr/bin/sendmail -t -i

これにより、少なくとも PHP で使用できるように構成されているかどうかがわかります。存在していても機能しない場合は、コマンド ラインから直接呼び出してみてください。それでもうまくいかない場合は、おそらくホストに直接連絡してください。

于 2013-02-22T09:44:25.193 に答える
0

ホスティングの管理者プロファイルが、送信元のプロファイルではないことがわかりました。質問は終了しました

于 2013-02-22T17:12:48.023 に答える