1

Ubuntu で発生していた問題のため、最近 OS を Ubuntu 11.10 から Debian 7.0.0 に変更しました。Apache 2 を使用して LAMP をセットアップしました。ほとんどの機能はほぼ同じように見えますが、Ubuntu では正常に機能していたメールが正しく機能しなくなりました。次のコードを使用します。

    $mailDelivery=mail($to,$subject,$message,$headers);
    if ($mailDelivery)
    {
        ?>
        <script type="text/javascript">
        alert("Mail delivery successful");
        </script>
        <?php
    }
    else
    {
        ?>
        <script type="text/javascript">
        alert("Mail delivery failed");
        </script>
        <?php
    }

mail() への入力引数を確認しましたが、Ubuntu で正常に動作したものと同じです。また、アラート ボックスが返されます

Mail delivery successful

しかし、メールはそのアドレス (私のオンライン アドレスの 1 つ) には表示されません。

php.ini を見たところ、次の行があります

[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = localhost
; http://php.net/smtp-port
smtp_port = 25

/var/log/apache2/error.log には、メール配信に関する情報はありません。

送信先のメールアドレスの迷惑メールフォルダも確認しましたが、そこには何もありませんでした。

また、iptablesをUbuntuからDebianに転送しました

iptables-save >iptables.save

Ubuntu では、iptables.save をコピーして

iptables-restore <iptables.save

また、次の結果で次の呼び出しを行いました。

peter@app-server:/var/www$ sudo cat /var/log/mail.err
peter@app-server:/var/www$ sudo cat /var/log/mail.log
peter@app-server:/var/www$ sudo cat /var/log/mail.warn
peter@app-server:/var/www$ sudo cat /var/log/mail.info
peter@app-server:/var/www$ 
4

1 に答える 1

0

わかった。問題の原因を見つけました。SMTP サーバーをインストールしていませんでした。走った

sudo apt-get install postfix

そしてそれは問題を修正しました。

于 2013-06-01T19:44:28.953 に答える