使用Mailgun发送电子邮件有时会挂起,但不发送电子邮件

问题描述 投票:1回答:1

因此,我只是将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错误日志也没有显示任何错误。

谢谢

php html email mailgun
1个回答
0
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.