Cron не отправляет электронную почту PHP

Freejoy спросил: 12 мая 2018 в 05:16 в: php

У меня есть следующий скрипт:

<?
$dir = './var/session';
$fi = new FilesystemIterator($dir, FilesystemIterator::SKIP_DOTS);
$fileCount = iterator_count($fi);//    echo 'Directory Count: ';echo $fileCount;//echo '<br />';$bytes = 0;
foreach (new DirectoryIterator('./var/session') as $file) {
    if ($file->isFile()) {
        $bytes += $file->getSize();
    }
}//echo $bytes;
//echo ' Bytes';
//echo '<br />'; $MBbytes = number_format($bytes / 1048576, 2);
//echo $MBbytes;echo ' MB';    $from = "mail@example.com";
    $to = "admin@example.com";
    $subject = "Session MB = " .$MBbytes;
    $message = "Session MB = " .$MBbytes."\n Directory Count: " .$fileCount;
    $headers = "From:" . $from;
    mail($to,$subject,$message, $headers,"-fmail@example.com");
//    echo "Email sent";

Я пытаюсь запустить этот скрипт cron. Когда я запускаю его, идя в него в моем браузере, он отлично работает. Я использовал каждое выражение cron, которое я могу, но письмо не отправляется. Любые предложения?

2 ответа

Есть решение
vitaliytv ответил: 12 мая 2018 в 05:38

попробуйте следующее: / 10 php LOCALPATHTOYOURSCRIPT / session-folder-size.php

где / 10 - "Каждые 10 минут".

Freejoy ответил: 12 мая 2018 в 05:56
Я запускаю это сейчас php /home/xxxxx/public_html/session-folder-size.php, но никакие электронные письма не отправляются. Я записывал его как предложено, и файл журнала имел точный php-скрипт, то есть в файле session-folder-size.php
Freejoy ответил: 12 мая 2018 в 06:41

Я нашел решение. Wget блокируется правилом htaccess. Я заметил в файле журнала ошибку 403. Не знаю, почему он не запускается с помощью php ...

Спасибо Джон Конде за отзыв журнала.

vitaliytv ответил: 25 мая 2018 в 08:50
потому что у вас разные параметры PHP для CLI и WebServer, например