使用Mailgun发送电子邮件偶尔会挂起并且不会发送电子邮件

时间:2018-03-09 18:36:16

标签: php html email mailgun

所以我只是将mailgun发送到一个网站,用于发送联系表单信息。 这在某些时候有效,但是当我按下发送时,Chrome左下角的消息“等待 url ...”,主要是页面挂起。

服务器上没有ssl,因此奇怪的mailgun构造函数。

这是我的php,它放在我网站的正文中。

<?php

        require 'mailgun-php/vendor/autoload.php';
        use Mailgun\Mailgun;

        if(isset($_POST['register'])){
            $message = "Contact Form.\n\n".
                "Name: ".$_POST['name']."\n".
                "Email: ".$_POST['email']."\n".
                "Message: ".$_POST['message']."\n";

            $mg = new Mailgun(*my key*, "api.mailgun.net", "v2", false);
            $domain = *my domain*;

            $mg->sendMessage($domain, array(
                'from'=>'Contact Form <build@<url>>',
                'to'=> *email*,
                'subject' => ' Contact Form',
                'text' => $message
                )
            );
            header('Location: ?sent=1');
        }

    ?>

这是表格代码:

<form method="post" action="index.php">

    <div class="row 50%">
        <div class="6u 12u$(mobile)"><input type="text" class="text" name="name" placeholder="Name" /></div>
        <div class="6u$ 12u$(mobile)"><input type="text" class="text" name="email" placeholder="Email" /></div>
        <div class="12u$">
            <textarea  name="message" placeholder="Message"></textarea>
        </div>
        <div class="12u$">
            <button class="button" type="submit" name="register"> Send Message </button>
        </div>
    </div>

</form>

我没有在收到电子邮件时收到任何错误。按下提交按钮后,页面最终将重新加载,但未应用标题重定向(我假设这是因为电子邮件未成功发送)。

php错误日志也没有出现任何问题。

由于

1 个答案:

答案 0 :(得分:0)

也许这是一个(很晚)的答案,但我遇到了同样的问题。我发现Mailgun拥有IP地址白名单,因此,如果您尚未在其中添加公用IP地址,则将永远无法建立与Mailgun API的连接。 在撰写此答案时,白名单位于以下链接:https://app.mailgun.com/app/account/security/api_keys