Я установил cron-скрипт, который запускается каждую минуту на CPanel моего веб-хоста. Cron работает правильно, но я столкнулся с проблемой, связанной с путем к скрипту, которую я не знаю, как ее решить. Большая часть моего сайта использует / home / mysite / public_html / в качестве корневого пути, но скрипт cron использует / home / mysite / в качестве корневого пути без части public_html.
Это вызывает много проблем с включением файлов, так как я вынужден исправить это в моих загрузчиках классов, проверяя как путь по умолчанию, так и альтернативный путь с префиксом public_html /:
spl_autoload_register(function($class){
$className = str_replace("\\", "/", $class);
$classPath = "{$className}.php";
$altClassPath = "public_html/{$classPath}";
if(file_exists($classPath)) require $classPath;
elseif(file_exists($altClassPath)) require $altClassPath;
else throw new ClassNotFoundException("Fatal Error: Class {$class} either does not exist, or has its include path mis-configured!");
});
Это кажется утомительным и подверженным ошибкам, и мне это совсем не нравится. Есть ли лучший способ справиться с этой проблемой? Я попытался использовать set_include_path в скрипте cron, но, похоже, с автозагрузчиком это тоже не помогает.