我们正在使用Mailgun与Laravel进行电子邮件发送,目前面临每天发送电子邮件的问题。有四个站点实例,无法跟踪从哪里发送电子邮件。
那么我们有什么方法可以从Mailgun API调用的地方跟踪IP地址?
答案 0 :(得分:1)
我认为最好的方法是使用h:
选项用自定义标头标记邮件:
curl -s --user 'api:YOUR_API_KEY' \
https://api.mailgun.net/v3/YOUR_DOMAIN_NAME/messages \
-F from='Sender Bob <sbob@YOUR_DOMAIN_NAME>' \
-F to='alice@example.com' \
-F subject='Hello' \
-F text='Testing some Mailgun awesomness!' \
-F h:X-Sender-Reference='server3'
这样,您可以在事件日志中看到X-Sender-Reference
自定义标头,以了解哪个服务器发送了消息。
请记住,接收者也可以查看这些标头,因此请不要暴露敏感信息。
取决于您的库,可以使用类似以下的内容:
$headers = $message->getHeaders();
$headers->addTextHeader('X-Sender-Reference', 'server3');
请参阅:https://documentation.mailgun.com/en/latest/api-sending.html#sending
还可以使用o:
标记邮件:
curl -s --user 'api:YOUR_API_KEY' \
https://api.mailgun.net/v3/YOUR_DOMAIN_NAME/messages \
-F from='Sender Bob <sbob@YOUR_DOMAIN_NAME>' \
-F to='alice@example.com' \
-F subject='Hello' \
-F text='Testing some Mailgun awesomness!' \
-F o:tag='September newsletter' \
-F o:tag='server3'
每封邮件允许的标签限制为 3 ,我认为目的是营销汇总。从技术上讲,可以使用与上面示例中的自定义标头相同的方式来使用它。
某些PHP库可能以这种方式使用:
$headers = $message->getHeaders();
$headers->addTextHeader('X-Mailgun-Tag', 'server3');
请参阅:https://documentation.mailgun.com/en/latest/user_manual.html#tagging