Я использую mailkit в своем приложении asp core и пытаюсь отправить почту через tls 1.3 с опцией StartTls.Вот мой код:
var emailMessage = new MimeMessage();
emailMessage.From.Add(new MailboxAddress("Tom", "sender"));
emailMessage.To.Add(new MailboxAddress("", "receiver"));
emailMessage.Subject = "la";
emailMessage.Body = new TextPart(MimeKit.Text.TextFormat.Html)
{
Text = "lalala"
};
using (var client = new SmtpClient())
{
await client.ConnectAsync("smtp.lalala.com", 587, SecureSocketOptions.StartTls);
await client.AuthenticateAsync("sender", "password");
await client.SendAsync(emailMessage);
await client.DisconnectAsync(true);
}
На локальном хосте работает отлично.Но у меня есть два сервера Ubuntu.На первом сервере, если он сначала не работал, а ошибка была: Expected ',' instead of ''
И это все.Но каким-то образом я мог получить сообщение о том, что mailkit не может найти путь / home / мой пользователь / .dotnet / ... и когда я создал эту папку, мне отправили письмо.Я видел, что в этой папке были сертификаты x509 или что-то вроде этого.Затем я попытался развернуть этот проект на другом сервере Ubuntu и снова не удалось.Я полностью забыл об этой папке и создал простое консольное приложение, отправляющее электронную почту, и снова получил ошибку с путем ~ / .dotnet.Я создал путь, и консольное приложение работало!Но не главное приложение asp.Так что я застрял.Я работаю с моим не администратором на этом сервере, а dotnet работает как пользователь www-data.Так может ли быть ошибка разрешения?И полученная ошибка не может ничего объяснить