Lassen Sie cron E-Mails im HTML-Format senden


10

Ich habe ein Statistikprogramm, das auf Protokolldateien über cron ausgeführt wird. Das Statistikprogramm kann HTML ausgeben.

Im Moment verlasse ich mich auf den MAIL_TO-Mechanismus in der Crontab.

MAILTO=my@email.addr
55 23 * * * /usr/bin/htmlstats

Das Problem ist, dass die gesendete E-Mail als HTML und nicht als einfacher Text angezeigt werden soll.

Cron fügt den folgenden Header in die E-Mail ein:

Content-Type: text/plain; charset="UTF-8"

Irgendeine Idee, wie ich das ändern würde zu:

Content-Type: text/html; charset="UTF-8"

Antworten:


3

Ich glaube nicht, dass du kannst. Eine Lösung könnte darin bestehen, die Ausgabe an sendmail oder mail weiterzuleiten, wodurch Sie mehr Kontrolle über den Inhaltstyp und andere Header erhalten.


Vielen Dank. Ich habe die Paspel gegeben, um es zu verschicken, und ich bin zufrieden mit dem, was ich sehe. Alles Gute!
Mark L

Die CONTENT_TYPEin einer anderen Antwort erwähnte variable Lösung scheint zumindest in einigen Cron-Versionen zu funktionieren.
Peter Eisentraut

22

Ich habe das CONTENT_TYPE="text/plain; charset=utf-8"eingegeben /etc/crontab, um meine Mail in UTF-8 zu haben.

Geben Sie CONTENT_TYPE="text/html; charset=utf-8"ein /etc/crontab, um die Mail in HTML zu senden.

Sie können es in einer bestimmten Datei hinzufügen, wenn das Verzeichnis /etc/cron.d/vorhanden ist. In diesem Fall wird die Spezifikation nur für die angeforderten Aufgaben definiert.


1
Das ist großartig ... kann bestätigen, dass es unter Ubuntu 14.04.2 funktioniert.
Billynoah

@billynoah ja, das sollte die akzeptierte Antwort sein. Arbeiten auf archlinux, cronie 1.5.1-1
g33kz0r

arbeitete an centos
zzapper

Arbeitet in Ubuntu 16
Marco Marsala

Scheint unter macOS Mojave nicht zu funktionieren.
Burhan Ali

-1

Ja, du kannst.

<?php exec('(  echo "test<br>créer un mail"| mail -s "SUBJECT" -a "Content-Type: text/html; charset=UTF-8" '.$receiver.' -- -f '.$sender.' ) &> /dev/null &'); ?>
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.