如何将电子邮件适配器添加到我的亚马逊 EC2 实例以启用我的应用程序的密码重置
Posted
技术标签:
【中文标题】如何将电子邮件适配器添加到我的亚马逊 EC2 实例以启用我的应用程序的密码重置【英文标题】:How can I add an email adapter to my amazon EC2 instance to enable password resets for my app 【发布时间】:2018-01-22 09:13:24 【问题描述】:我已经完成的步骤如下:
1)我已经设置了我的 EC2 实例。 2)我已将其链接到亚马逊 CodeDeploy 3) 我创建了一个 s3 存储桶,当我将它推送到我的实例时,它将保存我的云代码。 4) 我创建了一个包含我的云代码的文件夹。 5)我已经在其中初始化了 npm 并创建了一个 index.js 文件(它实际上是一个崇高的文本文件 - 不确定这是否正确?) 6) 我已经从命令行设置 index.js 是主要入口点。 7) 我在其中放入了以下电子邮件适配器代码:
var server = ParseServer(
// Enable email verification
verifyUserEmails: true,
// The public URL of your app.
// This will appear in the link that is used to verify email addresses and reset passwords.
// Set the mount path as it is in serverURL
publicServerURL: 'etc',
// Your apps name. This will appear in the subject and body of the emails that are sent.
appName: 'etc',
// The email adapter
emailAdapter:
module: 'parse-server-simple-mailgun-adapter',
options:
// The address that your emails come from
fromAddress: 'parse@example.com',
// Your domain from mailgun.com
domain: 'example.com',
// Your API key from mailgun.com
apiKey: 'key-mykey',
);
8) 我已经使用 mailgun 设置了一个帐户,它要求我提供一个域来发送电子邮件?我不确定这是什么?
我的主要问题是关于我上面发布的代码。这足以放入 index.js 来创建电子邮件适配器吗?上传一个崇高的文本文件可以吗?不导入库,云如何知道“ParseServer”类是什么? - 我需要向 index.js 添加更多代码吗?
除了 index.js 文件之外,云代码包中我还需要什么?这是一个晦涩难懂的话题,网上似乎没有关于如何将功能性云代码上传到亚马逊 EC2 实例的明确指南。
任何帮助表示赞赏,干杯。
【问题讨论】:
【参考方案1】:您的部分步骤是正确的,但您还必须修改 form 和 domain。您的域(针对您的问题)必须取自您的 mailgun 帐户。您必须添加一些步骤才能使用您的 DNS 提供商(例如 goDaddy 等)设置您的域。如果您不想使用,可以尝试使用 mail-gun 提供给您的默认沙箱域,但它是最好使用自己的域。在 from 字段中,您需要输入一些电子邮件地址,以便接收电子邮件的用户可以看到此消息是从哪封电子邮件发送给他们的。通常我喜欢说的是donotreplay@(当然是你的域名)
在我的项目中,这是我配置它的方式(它的工作原理):
"verifyUserEmails": true,
"emailAdapter":
"module": "parse-server-simple-mailgun-adapter",
"options":
"fromAddress": "donotreply@*******.com",
"domain": "mail.*******.com",
"apiKey": "<API_KEY_TAKEN_FROM_MAILGUN>"
,
您在 mail-gun 中的域名列表可以在这里找到:https://app.mailgun.com/app/domains(当然需要登录)
在这里:https://documentation.mailgun.com/en/latest/user_manual.html#verifying-your-domain 您可以阅读如何验证您的域
希望对你有帮助。
【讨论】:
您好,感谢您的回复,所以我需要在 index.js 和我上传到 codedeploy 的其余包中添加其他内容吗? 不,它应该按原样工作。您只需要确保指定了正确的值即可。我还建议您在部署之前在本地对其进行测试。 谢谢,我应该为“公共服务器 url”放什么?那只是我的亚马逊 ec2 服务器 DNS 吗? 你不需要放一些东西,但通常这和你的 serverURL 是一样的以上是关于如何将电子邮件适配器添加到我的亚马逊 EC2 实例以启用我的应用程序的密码重置的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 CloudFormation 将安全组添加到现有 EC2 实例
如何在没有 PEM 密钥的情况下通过 ssh 进入 EC2 实例?