0

PHP スクリプトからメールを送信するために、次のコードで mail() 関数をテストしています。

<?php  
ini_set("display_errors", "1");
error_reporting(E_ALL);
$to = 'example@gmail.com';
$message = 'test';
$from = 'test@gmail.com';
$subject = 'Test';
$headers = "From: $from\n";
mail($to, $subject, $message, $headers) or die ("Message not sent");
?>  

これは私が試した唯一のコードではありませんが、何も機能していないようです。ここで問い合わせている理由の 1 つは、エラーがまったく返されないためです。メールが宛先に届かないことを除いて、エラーの兆候はまったくありません。問題を解決するために私が行ったこと:

  1. php.ini の SMTP を localhost から gmail の smtp に変更しました
  2. 両端でスパムフィルターと送信トレイを確認しました
  3. エラー報告のさまざまな方法を試しました
  4. メールを送信するためのいくつかの異なる機能を試しました
  5. phpinfo() で一見関連するものをチェックし、無駄に調べました

私の端末の sendmail 機能に問題があるのではないかと思いますが、sendmail 機能に関連する問題をテストまたは修正する方法がありません。

OS X 10.4 Tiger と PHP 5.3.12 を搭載した PPC Mac で apache 2.0 を実行しています。

4

1 に答える 1

1

php.ini の SMTP 設定は、Windows 専用です。他のシステムでは、常にローカル MTA (Sendmail) が使用され、指定した SMTP 設定は黙って無視されます。Gmail を使用する場合は、MTA で設定してください。

送信側システムの Sendmail からのメール ログを確認します。メッセージ配信に関するヒントが見つかるはずです。

于 2012-05-26T16:41:46.357 に答える