Не работает виртуальный хостинг cPanel cronjob под Codeigniter - PullRequest
0 голосов
/ 10 января 2020

Несмотря на то, что есть много постов с похожей топикой c, я не смог найти никого, соответствующего моему делу, которое я кратко опишу здесь. Это сценарий тестирования

    <?php

    if (!defined('BASEPATH')) exit('No direct script access allowed');
    require 'DashboardBase.php';

    class Hello extends CI_Controller {

            public function message($to = 'World')
            {
                    echo "Hello {$to}!".PHP_EOL;
                    print "Hello {$to}!".PHP_EOL;
                    log_message('error',"Hello {$to}!".PHP_EOL);
            }
    }

    ?>

Веб-сервер находится под общим хостингом; используется cPanel; Codeigniter используется.

Внешний URL-адрес, который работает должным образом, выглядит следующим образом: https://pharmacomparison.com/adminPanel/hello/message/federico

Я активировал уведомление о выходе cronjob в своем личном письме, и можно отметить, что я также сохраняю вывод в журнал ошибок.

Здесь мои попытки определения cronjob

  1. (как предложено в руководстве CodeIgniter): / usr / local / bin / php public_html / adminPanel приветственное сообщение "federico" - -> нет уведомлений по электронной почте; нет вывода в журнал ошибок

  2. небольшая модификация, добавлено "/": / usr / local / bin / php public_html / adminPanel / hello message "federico" - > нет уведомления по электронной почте; в журнале 'error' нет вывода

  3. (предполагается, что это неправильно, но давайте попробуем) / usr / local / bin / php public_html / adminPanel / hello message "federico" - -> уведомление по электронной почте "Не удалось открыть входной файл: public_html / adminPanel / hello"; ничего в журнале «ошибок»

  4. (предполагается, что это неправильно, но давайте попробуем) / usr / local / bin / php public_html / adminPanel / hello. php message "federico "-> нет уведомлений по электронной почте, в журнале ошибок" ОШИБКА - 2020-01-10 16:09:25 -> Страница 404 не найдена: Hellophp / message "

  5. полный реальный путь к диску: уведомление по электронной почте с сообщением «Прямой доступ к сценарию не разрешен»

По сути, первые две попытки, предположительно правильные, ничего не генерируют, даже без ошибок. Есть идеи?

1 Ответ

0 голосов
/ 10 января 2020

Вы запускаете его неправильно, здесь - это способ запуска функции в codeigniter через CLI.

Пожалуйста, попробуйте это

php /usr/local/bin/php public_html/adminPanel/index.php Hello message "federico"

Все вызовы функций должны go через индекс. php

php /path_to_project_root/index.php ControllerName function "argument"

...