Como criamos uma mensagem com várias partes no Linux quando o assunto do email e as versões HTML e texto do corpo do email são fornecidas?
Crie uma mensagem do tipo multipart/alternative
conforme documentado no RFC 2046 :
De: empresa exemplo <news@example.com>
Para: Usuário Joe <joe.u@example.net>
Data: sábado, 21 de maio de 2011 17:40:11 +0300
Assunto: Exemplo de mensagem multipartes
Versão MIME: 1.0
Tipo de Conteúdo: multipart / alternativo; limite = asdfghjkl
--asdfghjkl
Tipo de conteúdo: texto / sem formatação; charset = utf-8
Olá a todos!
--asdfghjkl
Tipo de Conteúdo: text / html; charset = utf-8
<! DOCTYPE html>
<body>
<p> Olá pessoal! </p>
</body>
--asdfghjkl--
Consulte RFC 2046 e RFC 5322 para obter a sintaxe exata.
Podemos usar o mutt para enviar o email com várias partes criado na etapa 1, a partir do prompt do linux?
Se você encontrar uma maneira de definir o cabeçalho correto do Tipo de conteúdo. (No seu exemplo, você está usando -e
, mas o mutt usa -e
para propósitos diferentes. Até -e "my_hdr Content-Type: ..."
deixa o cabeçalho de texto / sem formatação intacto.)
É melhor enviar emails gerados diretamente sendmail
. Você precisará criar os cabeçalhos - veja o exemplo; use strftime("%a, %d %b %Y %T %z")
para Data e uma sequência de caracteres alfanuméricos aleatórios para o limite. Em seguida, canalize a mensagem preparada, incluindo os cabeçalhos, para sendmail -i -t
:
sendmail -i -t < above-example.txt
(A -t
opção significa "obter destinatários da linha Para: "; você pode usar como alternativa sendmail -i joe.u@example.net
)