PHPMailer로 이메일을 보낼 때 Cron 작업에 MTA가 필요합니까?

PHPMailer로 이메일을 보낼 때 Cron 작업에 MTA가 필요합니까?

제출 마감일이 가까워지면 CRON 작업을 사용하여 사용자에게 이메일 알림을 보내고 있습니다. 그런데 간단한 이메일을 먼저 보내서 테스트하려고 (CRON) info (No MTA installed, discarding output)하면 syslog. 하지만 URL을 사용하여 PHP 스크립트를 실행하면 나에게 이메일을 보낼 수 있습니다.

제 질문은, PHPMailer로 이메일을 보내려면 CRON Job을 실행할 때 웹 서버에 MTA를 설치해야 합니까?입니다.

이것은 내 crontab코드입니다.

* * * * * /var/www/html/test.php (cmd1;  cmd2) 2>&1 | logger -t mycmd

그리고 이것은 내 test.php코드입니다:

<?php

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

require '/usr/share/php/libphp-phpmailer/src/Exception.php';
require '/usr/share/php/libphp-phpmailer/src/PHPMailer.php';
require '/usr/share/php/libphp-phpmailer/src/SMTP.php';

require '/usr/share/php/libphp-phpmailer/autoload.php';

// Set the script time zone to UTC
date_default_timezone_set('Etc/UTC');

function sendMail($email, $message, $subject) {
    $mail = new PHPMailer();

    // set up for the SMTP and used account
    $mail->isSMTP();
    $mail->Host = 'smtp.gmail.com';
    $mail->SMTPAuth = true;
    $mail->Username = '[email protected]';
    $mail->Password = 'password';
    $mail->Port = 587;
    // Disable some SSL check
    $mail->SMTPOptions = array(
        'ssl' => array(
            'verify_peer' => false,
            'verify_peer_name' => false,
            'allow_self_signed' => true
        )
    );

    // sender, recipient, reply-to etc
    $mail->SetFrom('[email protected]', 'Reply-to');
    $mail->addAddress("$email");
    $mail->IsHTML(true);

    // email contains
    $mail->Subject = "$subject";
    $mail->Body = $message;

    // send email
    $mail->send();
}

sendMail("[email protected]", "Hello World!", "Test");
?>

관련 정보