0

私はこのコードを持っています

mail($to, 'Some Subject', 'message');

メールサーバーアドレスの場合、メール$toは送信されませんが、他のメールサーバーの場合、たとえば、メッセージは正常に送信されます。gmail.com$tomail.ru

何が理由でしょうか?

4

3 に答える 3

1

Gmailはほとんどのスパムを送信する傾向があるため、小さなサーバーをブロックします。

編集:しかし、私はそれを一度、1秒で動作させたと信じています、私は関連するコードを検索しています!

私は少し切り取ったが、それでもうまくいくはずだ。

public function send($sName, $sMail, $sSubject, $aTo, $sContent, $bHtml){
    $this->mailer = 'X-Mailer: PHP/' . \phpversion(). "\n";
    $this->ip = 'X-Sender-IP:' . $_SERVER['REMOTE_ADDR'] . "\n";

    $this->from = 'From:' . $sName . '<' . $sMail . ">\n";
    $this->reply = 'Reply-To:' . $sMail . "\n";
    $this->contentType = "Content-Type: text/html\nContent-Transfer-Encoding: 8bit\n\n";

    $this->from .= $this->reply;
    $this->from .= $this->mailer;
    $this->from .= $this->ip;
    $aAttach = $this->checkAttachement();
    $this->from .= $this->contentType;

    foreach($aTo as $to){
        $to = \trim($to);
        if($to != "" && \strlen($to) > 5){
            mail($to, $sSubject, $sContent, $this->from);
        }
    }
}
于 2012-12-17T20:19:20.770 に答える
0

スパムボックスをチェックします。このようなサービスは大量のメールを送信するために使用されるため、GMailは通常それをブロックします。

于 2012-12-17T20:20:47.947 に答える
0

メールアドレスから使用するドメインのパブリックドメインDNSレコード(noreply@mydomain.ruなど)で、送信サーバー/IPのSPFレコードを作成する必要があります。

SPFレコードは次のようになります。

v=spf1 include:my-php-server.ru ~all

これを参照してください:http://en.wikipedia.org/wiki/Sender_Policy_Framework

于 2012-12-17T20:26:17.080 に答える