13

私はこれをどこでも検索しました、そして私は本当にこれを解決したいと思います。以前は、SendGrid for PHPのようなSMTPサービスと、SwiftMailerのようなメーリングプラグインを使用することになりました。しかし、私はPHPを使いたいです。

基本的に私のセットアップ(私はサーバーセットアップに不慣れであり、これはチュートリアルに従った私の個人的なセットアップです)

Nginx
Rackspace Cloud
PHP 5.3 PHP-FPM
Ubuntu 11.04

phpinfo()はメールエントリについてこれを返します:

mail.log                     no value
mail.add_x_header            On
mail.force_extra_parameters  no value

sendmail_from   no value
sendmail_path   /usr/sbin/sendmail -t -i

SMTP        localhost
smtp_port   25

なぜMail()機能しないのか、誰かが私を助けてくれますか?私のスクリプトは他のすべてのサイトで機能しています。これは通常のメールコマンドです。ログを設定するか、サーバーでPHPポートを有効にする必要がありますか?

私のサンプルスクリプト

<?
    # FORMS VARS

    // $to = $customers_email;
    // $to = $customers_email;

    $to = $_GET["customerEmailFromForm"];

    $subject = "Thank you for contacting Real-Domain.com";
    $message = "
    <html>
    <head>
    </head>
    <body>
    Thanks, your message was sent and our team will be in touch shortly.
    <img src='http://cdn.com/emails/thank_you.jpg' />
    </body>
    </html>
    ";
    $headers = "MIME-Version: 1.0" . "\r\n";
    $headers .= "Content-type:text/html;charset=iso-8859-1" . "\r\n";
    $headers .= 'From: <real-email@real-domain.com>' . "\r\n";

    // SEND MAIL
    mail($to,$subject,$message,$headers);

?>

ありがとう

4

2 に答える 2

15

nginxとPHP-FPM(Apacheなし)を使用したUbuntu 14.04の新規インストールで、postfixもmailutilsもインストールされていないことが判明した場合。

私が使用した: sudo apt-get install postfix

(推奨される回答のように)

sudo apt-get install mailutils

サーバー上ですべてを機能させるため。両方が必要でした。PHP.iniのエントリ(推奨される回答に記載されている)も役立つ可能性がありますが、他の両方のパッケージがなければ、違いはありませんでした。

于 2014-09-15T16:08:36.870 に答える
14

値がないため、次のsendmail_fromように設定する必要がありますphp.ini

sendmail_from = "you@example.com" 

または、次を呼び出すときにヘッダーでmail

mail($to, $subject, $message, 'From: you@example.com');

電子メールアドレスは、たとえばRFC2822に従う必要があります。

  • you@example.com
  • You <you@example.com>

それができない場合、実際に機能する電子メールシステムをインストールしましたか?

そうでない場合は、次のコマンドでpostfixをインストールできます。

sudo apt-get install postfix

UbuntuでPHPで使用するためのPostfixの設定の詳細については、以下を参照してください。

https://serverfault.com/questions/119105/setup-ubuntu-server-to-send-mail

于 2012-11-02T10:32:13.913 に答える