问题描述:在AWS服务器上运行的WordPress可能会遇到无法向用户发送密码重置电子邮件、通知或其他与电子邮件相关的问题。这可能是由于AWS本身的限制或PHP设置的问题。
解决方案:
1.使用外部电子邮件服务商
在您的WordPress网站中使用外部邮件服务提供商,例如SendGrid或Mailgun,将发送电子邮件的任务分配给它们,而不是在您的AWS服务器上运行的WordPress。使用外部邮件服务确保电子邮件可靠送达。
2.在AWS配置SMTP 您可以将SMTP服务器配置到AWS上的EC2实例并在WordPress中使用SMTP插件。使用SMTP插件可以确保WordPress通过指定的SMTP服务器发送所有电子邮件。以下是使用WP Mail SMTP插件配置SMTP服务器的示例代码:
define( 'WPMS_ON', true );
define( 'WPMS_MAIL_FROM', 'email@yourdomain.com' );
define( 'WPMS_MAIL_FROM_NAME', 'Your Name' );
define( 'WPMS_MAILER', 'smtp' );
define( 'WPMS_SMTP_HOST', 'smtp.gmail.com' );
define( 'WPMS_SMTP_PORT', 587 );
define( 'WPMS_SSL', 'tls' );
define( 'WPMS_SMTP_AUTH', true );
define( 'WPMS_SMTP_USER', 'email@yourdomain.com' );
define( 'WPMS_SMTP_PASS', 'your email password' );
define( 'WPMS_SET_RETURN_PATH', true );
define( 'WPMS_LOG_DEBUG', false );
sendmail_path = /usr/sbin/sendmail -t -i