Веб-формы будут отправлены на адрес электронной почты STMP на моей учетной записи общего хостинга, но не на Gmail, Yahoo, ECT
Я пытался найти это, но я мог просто не знать, как правильно сформулировать поиск...
Я попытался настроить веб-формы, используя как Node.js(экспресс), так и php, с одной и той же проблемой: электронное письмо с данными формы без проблем отправит на адреса электронной почты моего доменного имени, даже если страница формы размещена на другом VPS провайдер, чем мой адрес электронной почты общего хостинга с моим доменным именем. Когда я пытаюсь отправить данные на любой другой адрес электронной почты, например yahoo, gmail, ect, меня перенаправляют на страницу "успех", мой консольный журнал на сервере сообщает об успехе, но электронная почта фактически никогда не проходит. Я пробовал разные конфигурации и продолжаю получать один и тот же результат. Я даже пытался отправить его с разных учетных записей электронной почты, и я получил тот же результат. Я даже не могу получить учетную запись Yahoo для отправки на ту же учетную запись Yahoo, но эта же учетная запись Yahoo без проблем отправит почту на мой общий хостинг. Вот пример версии кода Node.js, которую я пытаюсь использовать:
app.post('/send', (req, res) => {
const output = `
<p> you have a new contact request</p>
<h3>Contact Details</h3>
<ul>
<li>Name: ${req.body.name}</li>
<li>Email: ${req.body.email}</li>
<li>Phone: ${req.body.phone}</li>
</ul>
`;
// create reusable transporter object using the default SMTP transport
let transporter = nodemailer.createTransport({
host: 'mail.my-little-pwny.com',
port: 465,
secure: true, // true for 465, false for other ports
auth: {
user: 'me@my-little-pwny.com', // username
pass: 'abc123' // password
},
tls: {
rejectUnauthorized:false
}
});
// setup email data with unicode symbols
let mailOptions = {
from: '"Nodemailer" <me@my-little-pwny.com>', // sender address
to: 'v.shelnutt@aol.com', // list of receivers
subject: 'Client Contact Request', // Subject line
text: 'Hello world?', // plain text body
html: output // html body
};
// send mail with defined transport object
transporter.sendMail(mailOptions, (error, info) => {
if (error) {
return console.log(error);
}
console.log('Message sent: %s', info.messageId);
console.log('Preview URL: %s', nodemailer.getTestMessageUrl(info));
res.render('index', {msg:'Success! We will contact you as soon as
possible!'});
});
});
1 ответ
Возможно,
Прежде всего, вы должны перенаправить ваш personaldomain.com на G-mail с C-панели, добавив mx-записи и в домен. И после того, как установите SMTP g-mail в PHPMailer.